nginx的ip_hash机制,默认访问规则

clipboard.png
nginx采用ip_hash机制,假如客户端为一个未曾访问过的ip地址,那么nginx会转发到哪个server?
也就是说,在这个首次访问的过程中,nginx是怎么选取转发至哪个server的?

此外,采用ip_hash算法是否在一定程度上弱化了负载均衡的意义呢?有无第三方插件能一并解决会话和负载均衡的问题?

阅读 5k
2 个回答

在有少量ip访问时,ip_hash确实无法负载均衡,可能全部ip算出来的hash值都会落到同一台后端机器上,但这种情况下负载不高的话也确实不需要强调均衡。在后端服务器故障的情况下,nginx会把负载转到其他机器上的,故障机会临时从集群中排除的。

hash算法每次都会计算啊,计算之后得出结果,应该分配给哪一台,也就是说只需要保证hash计算的结果一致即可,并不需要区分请求是否第一次来。。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题