在windows系统下的负载均衡的搭建

win7+nginx均衡负载配置,可以大大减低服务器的负载,增强服务器的稳定性;

工具/原料

  • (nginx-1.5.8.zip)

方法/步骤

  1. 一、 下载Nginx(nginx-1.5.8.zip)

    解压到D:/serve目录下

    win7+nginx均衡负载配置
  2. 双击运行nginx.exe,屏幕一闪而过或者在DOS里面敲打命令,如图所示:

    win7+nginx均衡负载配置
  3. 可以看到屏幕一闪而过,接下来测试一下是否安装启动成功;

    win7+nginx均衡负载配置
  4. 在任务管理器的进程中查看nginx.exe是否启动

    win7+nginx均衡负载配置
  5. 若看到该映像名称,证明nginx程序已经启动成功!

    这时我们就可以在浏览器中访问:http://localhost

    win7+nginx均衡负载配置
  6. 这样我们就成功的搭建了一个nginx服务!!

  7. Nginx+Tomcat负载均衡配置这里只需要修改Nginx的配置文件nginx.conf,让它通过tomcat来转发。

  8. Nginx配置文件完成如下:

    #使用的用户和组,window下不指定

    #user  nobody;

    #指定工作衍生进程数(一般等于CPU总和数或总和数的两倍,例如两个四核CPU,则总和数为8)

    worker_processes  1;

    #指定错误日志文件存放路径,错误日志级别可选项为【debug|info|notice|warn|error|crit】

    #error_log  logs/error.log;

    #error_log  logs/error.log  notice;

    #error_log  logs/error.log  info;

    #指定pid存放路径

    #pid        logs/nginx.pid;

     

    #工作模式及连接数上限

    events {

    #使用网络I/O模型,Linux系统推荐使用epoll模型,FreeBSD系统推荐使用kqueue;window下不指定

    #允许的连接数

    #user epoll;

        worker_connections  100;

    }

     

    #设定http服务器,利用他的反向代理功能提供负载均衡支持

    http {

    #设定mime类型

        include       mime.types;

        default_type  application/octet-stream;

    #设定日志格式

        log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

                          '$status $body_bytes_sent "$http_referer" '

                          '"$http_user_agent" "$http_x_forwarded_for"';

        client_header_buffer_size 1k;

        large_client_header_buffers 4 4k;

     

    access_log  logs/access.log  main;

    #设定access log

        client_header_timeout 3m;

        client_body_timeout 3m;

        send_timeout 3m;

        sendfile        on;

        tcp_nopush     on;

        tcp_nodelay on;

        #keepalive_timeout  0;

        keepalive_timeout  65;

    #开启gzip模块

        gzip  on;

        gzip_min_length 1100;

        gzip_buffers 4 8k;

        gzip_types text/plain application/x-javascript text/css application/xml;

        output_buffers 1 32k; 

        postpone_output 1460;

        server_names_hash_bucket_size 128; 

        client_max_body_size 8m;

        fastcgi_connect_timeout 300; 

        fastcgi_send_timeout 300; 

        fastcgi_read_timeout 300; 

        fastcgi_buffer_size 64k; 

        fastcgi_buffers 4 64k; 

        fastcgi_busy_buffers_size 128k; 

        fastcgi_temp_file_write_size 128k; 

        gzip_http_version 1.1; 

        gzip_comp_level 2; 

    gzip_vary on;

    #设定负载均衡的服务器列表

    upstream localhost {

    #设定负载均衡的服务器列表

          #ip_hash;

    #同一机器在多网情况下,路由切换,ip可能不同 #weigth参数表示权值,权值越高被分配到的几率越大

          server 192.168.101.222:8088 max_fails=2 fail_timeout=600s;

          server 192.168.101.5:8081 max_fails=2 fail_timeout=600s; 

    }

    #设定虚拟主机

        server {

            listen       80;

            server_name  localhost;

     

            charset UTF-8;

    #设定本虚拟主机的访问日志

            access_log  logs/host.access.log  main;

    #对 "/" 启用负载均衡

            location / {

                root   \\192.168.101.222\D:\web\apache-tomcat-6.0.37\webapps;

                index  index.html index.htm index.aspx;

                proxy_redirect off;

    #保留用户真实信息

                proxy_set_header Host $host; 

                proxy_set_header X-Real-IP $remote_addr; 

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    #允许客户端请求的最大单个文件字节数

    client_max_body_size 10m; 

    #缓冲区代理缓冲用户端请求的最大字节数,可以理解为先保存到本地再传给用户

                client_body_buffer_size 128k;

    #跟后端服务器连接超时时间 发起握手等候响应超时时间

                proxy_connect_timeout 12;

    #连接成功后 等待后端服务器响应时间 其实已进入后端的排队之中等候处理

                proxy_read_timeout 90;

    #代理请求缓存区 这个缓存区间会保存用户的头信息一共Nginx进行规则处理 一般只要能保存下头信息即可

                proxy_send_timeout 90;

    #同上 告诉Nginx保存单个用的几个Buffer最大用多大空间

                proxy_buffer_size 4k;

                proxy_buffers 4 32k;

    #如果系统很忙的时候可以申请国内各大的proxy_buffers 官方推荐 *2

                proxy_busy_buffers_size 64k;

    #proxy 缓存临时文件的大小

                proxy_temp_file_write_size 64k; 

                proxy_next_upstream error timeout invalid_header http_500 http_503 http_404; 

                proxy_max_temp_file_size 128m;

                proxy_pass http://localhost;

            }

            

     

        

            error_page   500 502 503 504  /50x.html;

            location = /50x.html {

                root   html;

            }

     

        }

     

     

     

    }

  9. 四、测试 

    前提是分别启动两台机器的tomcat,其次启动nginx服务;

    在192.168.101.23上访问nginx服务器(通过访问(项目路径)来实现对192.168.101.222和192.168.101.5这两个机器上应用程序的访问,最终实现tomcat的均衡负载)

    [1]关闭192.168.101.222上的tomcat服务,访问192.168.101.23上的nginx服务,观察192.168.101.5上的tomcat是否运行;

    [2]关闭192.168.101.5上的tomcat服务,访问192.168.101.23上的nginx服务,观察192.168.101.222上的tomcat是否运行;

    [3]两个tomcat都启动,访问nginx服务,模拟并发用户n个,观察tomcat的运行情况;

    如果[1]和[2]的tomcat都运行就说明搭建nginx代理服务成功,tomcat实现了均衡负载;

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值