一、概述
Nginx的upstream目前支持的分配算法:
1、round-robin 轮询1:1轮流处理请求(默认)
每个请求按时间顺序逐一分配到不同的应用服务器,如果应用服务器down掉,自动剔除,剩下的继续轮询。
2、weight 权重(加权轮询)
通过配置权重,指定轮询几率,权重和访问比率成正比,用于应用服务器性能不均的情况。
3、ip_hash 哈希算法
每个请求按访问ip的hash结果分配,这样每个访客固定访问一个应用服务器,可以解决session共享的问题。应用服务器如果故障需要手工down掉。
参数含义:
down:表示单前的server暂时不参与负载
weight:默认为1,weight越大,负载的权重就越大。
max_fails:允许请求失败的次数默认为1.当超过最大次数时,返回proxy_next_upstream模块定义的错误
fail_timeout:max_fails次失败后,暂停的时间。
backup:其它所有的非backup机器down或者忙的时候,请求backup机器。
二、配置
1、round-robin 轮询(默认)
?
1
2
3
4
5
6
7
8
9
10
11
upstream tg-t4 {
server 10.0.0.110:8099;
server 10.0.0.110:8098;
}
server {
listen 8096;
server_name www.tg-t4.com;
location / {
proxy_pass http://tg-t4;
}
}
访问结果:ABABABABA
2、加权轮询
?
1
2
3
4
5
6
7
8
9
10
11
upstream tg-t4 {
server 10.0.0.110:8099 weight=2;
server 10.0.0.110:8098 weight=5;
}
server {
listen 8096;
server_name www.tg-t4.com;
location / {
proxy_pass http://tg-t4;
}
}
访问结果:ABBABB ABBABB
注:weight影响的访问结果是按最小比例算的,而不是理想状态下:AABBBBB AABBBBB
3、ip_hash
?
1
2
3
4
5
6
7
8
9
10
11
12
upstream tg-t4 {
server 10.0.0.110:8099;
server 10.0.0.110:8098;
ip_hash;
}
server {
listen 8096;
server_name www.tg-t4.com;
location / {
proxy_pass http://tg-t4;
}
}
访问结果:
IP1:AAAAAA
IP2:BBBBBB
4、热备
?
1
2
3
4
5
6
7
8
9
10
11
12
upstream tg-t4 {
server 10.0.0.110:8099;
server 10.0.0.110:8098 backup;
}
server {
listen 8096;
server_name www.tg-t4.com;
location / {
proxy_pass http://tg-t4;
}
}
访问结果:
访问1:两个服务均正常。AAAAAA
访问2:停用10.0.0.110:8099。BBBBBB
访问3:重启10.0.0.110:8099。AAAAAA
5、加参数优化
?
1
2
3
4
5
6
7
8
9
10
11
12
upstream tg-t4 {
server 10.0.0.110:8099 weight=1 max_fails=2 fail_timeout=2;
server 10.0.0.110:8098 weight=3 max_fails=2 fail_timeout=2 backup;
}
server {
listen 8096;
server_name www.tg-t4.com;
location / {
proxy_pass http://tg-t4;
}
}
访问结果:同4
backup优先级最高,当有了这个参数设定,那么所对应的服务只能作为热备。
配置文件参考:
http://www.tuohang.net/article/229504.html
轮询方式参考:
http://www.tuohang.net/article/52395.html
七层与四层参考:
http://www.tuohang.net/article/219220.html
到此这篇关于nginx 负载均衡轮询方式配置的文章就介绍到这了,更多相关nginx 负载均衡内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/londa/article/details/123301649
声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。