linux – 多个Nginx服务器是否使用ip_hash指令将相同的IP地址负载均衡到同一个后端?

前端之家收集整理的这篇文章主要介绍了linux – 多个Nginx服务器是否使用ip_hash指令将相同的IP地址负载均衡到同一个后端?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有两台独立的Nginx机器.该域使用循环DNS并具有两个A记录,一个用于两个前端Nginx服务器中的每一个.

两个Nginx服务器都使用ip_hash指令和代理请求到相同的后端服务器.

转到第一个Nginx服务器的IP地址是否总是被路由到与发往另一个Nginx服务器的相同IP地址相同的后端服务器?

这可能有所帮助:What IP does nginx use for ip_hash sticky sessions?

最佳答案
Nginx服务器不知道彼此有自己的ip_hash表.因此,特定服务器将根据自己的ip_hash池将流量路由到后端.前端Nginx服务器之间的任何一致性都是由于偶然的机会.

现在在实践中,这可能不是一个问题,因为客户端的DNS在会话期间不太可能发生变化.结果,他们将访问相同的前端服务器并被路由到相同的后端服务器.

另一种方法是使用类似HAProxy的东西,它可以在许多指标上进行平衡,例如:作为URL参数.您的应用程序可以设置参数以确保客户端路由到同一后端.当然,首选使用分布式工具通过后端规范化数据是首选,但对于遗留应用程序而言,这可能具有挑战性.

猜你在找的Nginx相关文章