Nginx负载均衡配置权重方法【转】

 

权重配置:

upstream backserver{}  用在nginx 里面是配置 集群的服务器  如上图 weight 配置的该服务器的权重,上面 配置的是2:1 并不是 请求8080的服务器有2次 请求8081的有1次 而是比例:2:1 如果配置 是5:3并不是 一个请求5次一个请求3次

 

1
2
3
4
5
upstream web_server {
        #weigrt权重值(越大访问率大),在fail_timeout时间内检查后端服务器max_fails次,失败则被剔除;
    server 192.168.1.123 weight=1 fail_timeout=30s max_fails=2;
    server 192.168.1.91 weight=1 fail_timeout=30s max_fails=2;
}

但是有问题发现只用上面的配置,即使后端服务器报错也不会剔除,还是会继续访问然后netstat看有好多time_wait包

每个后端服务器都配置了不同的 max_fails 和 fail_timeout 值,以指定在什么条件下将服务器标记为不可用,并在多长时间后重新尝试将请求发送到该服务器。

所以要加入check检查,但是编译时必须加入upstream_check_module模块,--add-module=/root/nginx_upstream_check_module-master

upstream manager {
        ip_hash;
        server 10.70.169.46:8003 max_fails=3 fail_timeout=30s;
        server 10.70.169.47:8003 max_fails=3 fail_timeout=30s;
        check interval=3000 rise=2 fall=5 timeout=1000 type=tcp;
}

 

也可以试试这个,但是我没有使用,后端服务报错时看了监控代码是404报错

max_fails=number 设定Nginx与服务器通信的尝试失败的次数。在fail_timeout参数定义的时间段内,如果失败的次数达到此值,Nginx就认为服务器不可用。在下一个fail_timeout时间段,服务器不会再被尝试。 失败的尝试次数默认是1。设为0就会停止统计尝试次数,认为服务器是一直可用的。你可以通过指令proxy_next_upstream、 fastcgi_next_upstream和 memcached_next_upstream来配置什么是失败的尝试。 默认配置时,http_404状态不被认为是失败的尝试。

复制代码
location / {
            proxy_pass http://tomcatserver1;
            index  index.html index.htm;
            # proxy_next_upstream
            proxy_next_upstream error timeout invalid_header http_500 http_503 http_404; 
            proxy_connect_timeout 20s;
            proxy_read_timeout 20s;
            proxy_send_timeout 20s;
        }
复制代码

 

转自

如何配置nginx负载均衡配置(轮询,权重,ip绑定) - 年少不知愁 - 博客园
https://www.cnblogs.com/920913cheng/p/10475864.html

Nginx负载均衡配置——权重方式 – 零五博客
http://www.05bk.com/358.html

(25条消息) Nginx负载均衡策略 - weight 轮询加权_十佳菜鸟的博客-CSDN博客_nginx权重配置weight
https://blog.csdn.net/h13140995776/article/details/101173558?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~aggregatepage~first_rank_ecpm_v1~rank_v31_ecpm-1-101173558.pc_agg_new_rank&utm_term=nginx%E6%9D%83%E9%87%8D%E9%85%8D%E7%BD%AEweight&spm=1000.2123.3001.4430

 

Nginx配置max_fails fail_timeout 不起作用_nginx反向代理配置max fail-CSDN博客
https://blog.csdn.net/u011202188/article/details/88802035

posted @   paul_hch  阅读(3566)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2020-12-16 keepalived非争抢机制不生效报错Received lower prio advert, forcing new election
2020-12-16 MySQL主从复制,启动slave时报错1872 Slave failed to initialize relay log info structure from the repository
2019-12-16 修改jar包中的文件
点击右上角即可分享
微信分享提示