[nginx] 负载均衡策略

nginx选择反向代理服务器以达到负载均衡的策略(UpStream配置)

具体策略:

1. 轮询

依次将请求发送给列表中的服务器,针对服务器性能相同的情况。

2. 权重轮询

按权重发送请求给服务器,权重高的得到的请求更多,针对性能不平等的情况。

3. ip_hash

计算请求ip的hash(并取模到有限空间),每个服务器服务一段固定的地址空间,好处是同一个访客回固定访问一个服务器,可以解决session共享问题。

相关Nginx配置

down 该server暂不参与负载

weight server的权重

max_fails 允许请求的最大次数

fail_timeout 请求失败达到最大次数后暂停的时间

backup 其他所有机器繁忙时用于紧急应对的备用机器

注:Nginx重新加载配置不会停止服务,原理为Nginx会启动采用新的配置文件的worker进程,并将新的请求分配到这些进程。在原有worker进程的请求全部处理完毕后会关闭旧worker进程。

补充

负载均衡方案需要配合keepalive使用,因为Nginx进行反向代理的时候,可能会出现,返回结果延迟的情况,可能会出现结果尚未返回到代理服务器,它和客户端的连接已经过期;或者设置连接过期时间过长导致浪费资源的情况。

(keepalive是在传输层等位置主动发送探测报文确保连接存活的方案)

posted @ 2021-10-25 23:43  Cheung-10  阅读(2)  评论(0)    收藏  举报