Tcp 当主主机返回时,Haproxy关闭与备份主机的连接 问题:

Tcp 当主主机返回时,Haproxy关闭与备份主机的连接 问题:,tcp,load-balancing,publish-subscribe,failover,haproxy,Tcp,Load Balancing,Publish Subscribe,Failover,Haproxy,当主主机关闭后可用时,是否可以让haproxy关闭与备份主机的所有连接 上下文 我正在使用HAproxy为pubsub执行故障切换 haproxy后端配置如下所示: listen pubsub 0.0.0.0:1234 mode tcp server primary primary.x.com:1234 weight 1 inter 500 rise 10 fall 5 check server backup backup.x.com:1234 weight 1 int

当主主机关闭后可用时,是否可以让haproxy关闭与备份主机的所有连接

上下文 我正在使用HAproxy为pubsub执行故障切换

haproxy后端配置如下所示:

listen pubsub 0.0.0.0:1234
    mode tcp

    server primary primary.x.com:1234 weight 1 inter 500 rise 10 fall 5 check
    server backup backup.x.com:1234 weight 1 inter 500 rise 10 fall 5 check backup
我为发布和订阅双方建立了长期的联系

问题出现在以下场景中:

  • primary
    下降
  • A
    连接到
    备份
    并发布
  • B
    连接到
    备份
    并订阅
  • primary
    已修复并再次激活
  • C
    连接到
    primary
    并发布,但
    B
    不接收它
  • D
    连接到
    primary
    并订阅,但不获取
    A
    的消息

我所看到的这个问题的最佳解决方案是,当主主机重新可用时,让haprox强制关闭与备份主机的所有连接。

我知道这是一个较老的问题,您现在可能已经找到了解决方案,但如果您还没有找到,那么我想您正在寻找的答案是服务器选项。从版本1.5开始,这是一个新的服务器选项

根据文档,您可以提供当服务器标记为“up”时要执行的操作。目前,唯一的行动是:

关闭备份会话:关闭所有备份服务器上的会话

server primary ... on-marked-up shutdown-backup-sessions