Nginx负载均衡的配置

来源:互联网 发布:少儿机器人编程培训 编辑:程序博客网 时间:2024/05/15 08:09

<span style="font-size:18px;">    <span style="font-size: 18px; font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">负载均衡就是把服务器端的压力分担到多个服务器上,每个服务器都会根据自己的能力负载不同的大小的压力。</span></span>

    个人使用的是centos7,nginx实现负载均衡主要是修改配置文件,为了不损坏配置文件,我们在/usr/local/nginx/conf中新建一个配置文件fzjh.conf,配置成如下:

<span style="font-size:18px;">user nobody;worker_processes 4;events{      worker_connections 1024;        }http{       upstream myproject {</span>
<span style="font-size:18px;">                ip_hash                server 116.211.94.1;                server 42.156.140.7;                }       server{             listen 8080;             location / {                     proxy_pass http://myproject;              }        }}~        </span>
   配置负载均衡主要是http这个大括号中的内容,新建一个upstream模块,模块名可以任意取,例如这儿的myproject,但是要和下面server中的location中的proxy_pass的网址一样。

   upstream模块中的server是我们进行负载均衡的服务器地址,由于负载均衡只需要两个或两个以上的服务器就能测试,我们这里选择了京东和万网,我们可以首先可以在终端上ping一下京东的地址,ping www.jd.com,会出现京东的ip地址配置到server中,例如:

<span style="font-size:18px;">w.jdcdn.com (116.211.94.1) 56(84) bytes of data.64 bytes from 116.211.94.1: icmp_seq=1 ttl=128 time=2.69 ms64 bytes from 116.211.94.1: icmp_seq=2 ttl=128 time=10.4 ms64 bytes from 116.211.94.1: icmp_seq=3 ttl=128 time=4.32 ms64 bytes from 116.211.94.1: icmp_seq=4 ttl=128 time=2.95 ms</span>

     可以看到我这里ping的京东的地址是116.211.94.1这是一个外网ip地址,在浏览器上输入这个地址测试下能不能正常访问京东。万网地址同理ping一下www.net.cn

    ip_hash,就是如果一个用户某次访问被访问到了服务器A,那么下次访问的时候  再次访问到服务器A。

   如果想给服务器分配权重,则可以如下配置

   

 server 116.211.94.1 weight=2; 

   配置好需要重新加载这个配置文件启动,/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/fzjh.conf

   重新启动好后进行测试,在centos浏览器中输入127.0.0.1:8080,可以看到跳转发到不同的页面,如:





0 0
原创粉丝点击