websocket连接如何通过负载平衡器工作?
请原谅我的无知,因为我使用负载平衡器和WebSocket的经验有限。我试图理解客户端如何通过WebSocket连接到负载平衡器后面的服务器集群 我对负载平衡器的理解是,它们就像反向代理。它们接收来自客户端的请求,将它们路由到集群中的服务器,当服务器回复到负载平衡器时,负载平衡器将该信息中继到客户端。在这方面,他们就像一个中间人,在服务器和客户端之间打电话 现在将WebSocket添加到混合中。如果客户端试图通过WebSocket进行通信。负载平衡器不需要打开2个WebSocket连接吗?一个是客户端,一个是服务器?这听起来不像是可以扩展的,除非还有一个负载平衡器集群 我的第二个猜测是,负载平衡器并不是真正的“中继”信息,它们只是一个路由器,为客户机提供服务器的IP,然后在服务器和客户机之间直接进行通信websocket连接如何通过负载平衡器工作?,websocket,load-balancing,system-design,Websocket,Load Balancing,System Design,请原谅我的无知,因为我使用负载平衡器和WebSocket的经验有限。我试图理解客户端如何通过WebSocket连接到负载平衡器后面的服务器集群 我对负载平衡器的理解是,它们就像反向代理。它们接收来自客户端的请求,将它们路由到集群中的服务器,当服务器回复到负载平衡器时,负载平衡器将该信息中继到客户端。在这方面,他们就像一个中间人,在服务器和客户端之间打电话 现在将WebSocket添加到混合中。如果客户端试图通过WebSocket进行通信。负载平衡器不需要打开2个WebSocket连接吗?一个是客
关于这一点的信息似乎都忽略了解释的这一部分。如果有人能解释我遗漏了什么,我将不胜感激。负载平衡器和反向代理有不同的用例
- 负载平衡器的主要使用情形是在服务器组中的节点之间分配负载,以管理每个节点的资源利用率
- 反向代理的一个用例是对客户端隐藏服务器元信息(ip、端口等)。这是某种安全措施
我建议看一些聊天信息系统设计架构,HTTP(Keep Alive)与Websocket,如何使用Websocket发布/订阅(它可以很好地扩展Websocket) 本博客提供了一个很好的方法,可以为多个用户扩展WebSocket: 不要错过nginix,它是分布式系统设计的好站点