假设我们有3台服务器,IP地址分别为: 192.168.0.1 / 192.168.0.2 / 192.168.0.3
我们将192.168.0.1作为前端主服务器,192.168.0.2和192.168.0.3作为负载均衡的后端服务器。
下面是192.168.0.1主服务器上Nginx的配置方法: worker_processes 1;
events { worker_connections 1024; }
http { upstream serverlist { server 192.168.0.2:8000 weight=3 max_fails=3 fail_timeout=20s; server 192.168.0.3:8000 weight=7 max_fails=3 fail_timeout=20s; }
server { listen 80; server_name www.sunbloger.com; location / { proxy_pass http://serverlist; proxy_set_header HOST $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } }
配置说明: upstream serverlist{}可以理解为一个服务器池,通过proxy_pass http://serverlist命令,可将访问www.sunbloger.com的请求分配给位于池内的服务器192.168.0.2和192.168.0.3。 weight=3和weight=7为服务器的权重,权重越高,被分配到的请求就越多。 max_fails=3和fail_timeout=20s的含义是,当请求失败次数达到3次时,这个服务器将被暂时下线20秒。
技巧:主服务器可负责静态内容,将所有php的请求分配到后端服务器处理。
转载请注明:阳光部落原创,更多内容请访问http://www.sunbloger.com/