我们有一些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.f2er.com/nginx/435454.html