“1”NGINX负载均衡设置
(1)轮询算法:每次将请求顺序分配到不一样的服务器,经过此算法能够实现请求在多台机器之间的轮询转发。
upstream test_svr
{
server 192.168.1.10:8080;
server 192.168.1.20:8080;
server 192.168.1.30:8080;
}
在NGINX配置文件中,用upstream指令定义一组负载均衡后端服务池区。
(2)权重算法:经过将不一样的后端服务器设置不一样的权重以便实现请求的按比例分配,当后端服务器故障时能够自动剔除该服务器。
upstream test_svr
{
server 192.168.1.10:8080 weight=1 max_fails=1 fail_timeout=10s;
server 192.168.1.20:8080 weight=2 max_fails=1 fail_timeout=10s;
server 192.168.1.30:8080 weight=3 max_fails=1 fail_timeout=10s;
}
其中,test_svr为服务器组名。weight设置服务器的权重,默认为1,权重值越大,表示服务器能够接收更多的请求。max_fails和fail_timeout表示若是某台服务器在fail_timeout时间内出现max_fails次链接失败,那么NGINX就会认为该服务器已经故障,从而剔除该服务器。
(3)IP哈希算法:此算法根据用户的客户端IP将请求分配给后端的服务器,因为源IP相同的客户端通过IP哈希算法后的值相同,所以同一客户端的请求能够分配到后端的同一台服务器上。IP哈希负载均衡主要经过指令ip_hash指定。
upstream test_svr
{
ip_hash;
server 192.168.1.10:8080;
server 192.168.1.20:8080;
server 192.168.1.30:8080;
}
“2”NGINX反向代理设置
反向代理方式与普通的代理方式有所不一样,使用反向代理服务器能够根据指定的负载均衡算法将请求转发给后端的真实WEB服务器,能够将负载均衡和代理服务器的高速缓存技术结合在一块儿,从而提高静态网页的访问速度,所以能够实现较好的负载均衡。
“proxy_pass http://test_svr” 用于指定反向代理的服务器池。算法