微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

nginx – 当服务器IP发生变化时,excing TCP(例如http/mysql)连接仍在运行

我们有一些PHP-FPM服务器,当他们需要数据库连接时,他们连接到HAProxy服务器,该服务器选择要使用的数据库服务器并打开连接.当我们想要在HAProxy服务器上执行某些维护时(例如需要重新启动HAProxy的配置更改),过程如下:

>在HAProxy服务器上关闭Keepalived
>等待浮动IP传输到备份HAProxy服务器(也运行Keepalived)
>等到HAProxy统计信息只报告一个连接(我们检查有多少个连接)
>重新启动HAProxy
>重新启动Keepalived

当第2步发生时,那时打开的MysqL连接会发生什么?根据this TCP Sessions and IP Changes question,连接将被删除.这是真的吗?如果是这样,可以采取什么措施来防止这种情况发生?连接是否会以某种方式强制使用服务器的主(非浮动)IP?

我们也有两个类似的设置,其中有两个运行Keepalive的Nginx服务器,我们正在计划进行等效的过程.如果我们这样做,同样的问题适用 – 当IP移动到另一台服务器时,现有的http连接会发生什么?

我感谢您的帮助.

最佳答案
他们断开了. TCP没有用于更改IP地址的协议部分,因此客户端不会知道它已经神奇地改变了.必须建立新的连接.

原文地址:https://www.jb51.cc/nginx/435454.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐