发布网友 发布时间:2022-02-26 21:19
共3个回答
懂视网 时间:2022-02-27 01:40
产品型号:Thinkpad E15
系统版本:centos8
nginx负载均衡策略
Nginx负载的5种策略设置方法:
1、轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
upstream backserver {
server 192.168.1.62;
server 192.168.1.64;
}
2、指定权重
指定轮询几率,weight权重大小和访问比率成正比,用于后端服务器性能不均的情况。
upstream backserver {
server 192.168.1.62 weight=1;
server 192.168.1.64 weight=2;
}
3、ip_hash
每个请求,按访问ip的hash结果进行分配,这样每个访客,会固定访问同一个后端服务器,可以解决session的问题。
upstream backserver {
ip_hash;
server 192.168.1.62:80;
server 192.168.1.64:80;
}
4、fair
按后端服务器的响应时间来分配请求,响应时间短的优先分配。
upstream backserver {
server server1;
server server2;
fair;
}
5、url_hash
按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。
upstream backserver {
server squid1:3128;
server squid2:3128;
hash $request_uri;
hash_method crc32;
}
总结:Nginx负载的5种策略设置方法:
1. 轮询(默认)
2. 指定权重
3. IP绑定 ip_hash
4. fair
5. url_hash
热心网友 时间:2022-02-26 22:48
这个是很正常的,ip_hash的负载均衡是以客户端的ip地址作为hash错作的key进而计算hash值得。这种策略能保证一个ip访问到的永远是同一台机器。热心网友 时间:2022-02-27 00:06
生产环境,今天无意中用IP访问了一下,发现竟然可以访问到,有一个域名被做为了默认域名。网上找了一下资料,Nginx可以设置禁止通过IP访问的。在任一有效的Nginx配置文件中加上以下一段#