您好!欢迎光临某某钣金加工有限公司网站!
钣金加工一站式制造供应商
设计定制、生产加工、整机装配、设备接线
客户咨询服务热线:
400-123-4567
HASH GAME - Online Skill Game ET 300nginx负载均衡中RR和ip_hash策略分析
您的位置: 首页 > 新闻中心 > hashgames > HASH GAME - Online Skill Game ET 300nginx负载均衡中RR和ip_hash策略分析

HASH GAME - Online Skill Game ET 300nginx负载均衡中RR和ip_hash策略分析

作者:小编    发布时间:2025-02-14 19:13:25     浏览次数 :


  HASH GAME - Online Skill Game GET 300

HASH GAME - Online Skill Game GET 300nginx负载均衡中RR和ip_hash策略分析

  下面,我们针对RR和ip_hash的负载均衡策略进行分析。因为每一种负载均衡策略都是在upstream的框架中使用,upstream控制总的工作流程,负载均衡策略仅仅提供选择或释放server的函数,所以,我们在分析RR时结合upstream(ngx_http_upstream.c)。 ip_hash大部分内容与RR一致,只是重新实现RR中的ngx_http_upstream_get_peer函数。

  2.2.3 .2接着,让当前server的失败次数加一(peer-fails++; 如果该server最大失败次达到最大失败次数,将在一段时间内该server是无效的),如果当前nginx与后台服务器的尝试次数没有达到upstream中server的总个数,重新跳转到2.2.2, 轮循下一个server, 继续尝试。如果达到最大尝试次数,就表示uptream中所有的server都尝试了一遍,没有server可以提供服务,返回一个504的错误给客户端。

  2.2.4.2接着,让当前server的失败次数加一(peer-fails++; 如果该server最大失败次达到最大失败次数,将在一段时间内该server是无效的),如果当前nginx与后台服务器的尝试次数没有达到upstream中server的总个数,重新跳转到2.2.2, 轮循下一个server, 继续尝试。如果达到最大尝试次数,就表示uptream中所有的server都尝试了一遍,没有server可以提供服务,返回一个504的错误给客户端。

  如果当前server不能提供服务,就会根据当前的哈希值再哈希出一个新哈希值,选择另一个服务器继续尝试,尝试的最大次是upstream中server的个数,如果server的个数超过20,也就是要最大尝试次数在20次以上,当尝试次数达到20次,仍然找不到一个合适的服务器,ip_hah策略不再尝试ip哈希值来选择server, 而在剩余的尝试中,它会转而使用RR的策略,使用轮循的方法,选择新的server。