![如何对 Socket 连接进行负载平衡?](https://linux22.com/image/768263/%E5%A6%82%E4%BD%95%E5%AF%B9%20Socket%20%E8%BF%9E%E6%8E%A5%E8%BF%9B%E8%A1%8C%E8%B4%9F%E8%BD%BD%E5%B9%B3%E8%A1%A1%EF%BC%9F.png)
我们拥有大量与服务器建立套接字连接的设备。连接是 TCP 套接字连接,从目标 IP 端口对到达服务器 IP:端口对。在独立模式下,响应设备没有任何问题。
然而,随着设备数量的增加,我们不得不引入负载均衡器,它将流量重新集中到后端的各个接收器。然后接收器处理信息,并将其存储在数据库中以供将来处理。
但是,我们无法向任何设备发送响应,因为负载均衡器(HA 代理)在将数据包发送到防火墙后面的服务器池时会对数据包进行 NAT 并更改 IP 地址。
我们如何确保连接不会丢失并且响应会返回到设备?
平衡 TCP/IP 连接的正确方法是什么,同时还能确保连接得到响应?
任何帮助将不胜感激。
我们目前正在使用 HA Proxy。我们愿意切换到任何其他开源负载均衡器。我们只需要一个循环负载均衡器。