【问题标题】:How do you handle sockets when you have multiple servers当你有多个服务器时你如何处理套接字
【发布时间】:2022-12-09 11:49:56
【问题描述】:
试图弄清楚如何使用多个不同的 api 服务器设置套接字。
我目前有 1 个在 nodejs (v14) 上运行的 api 服务器,客户端可以通过套接字连接到它。我正在添加多台服务器(现在是 2 台,以后可能会更多)。如果我添加另一个套接字将如何保持同步?
即用户 A 通过套接字连接到服务器 1。用户 B 通过套接字连接到服务器 2。用户 A 触发更新事件,服务器 1 更新所有客户端。 Server 1如何通知Server 2更新给所有客户端呢?
【问题讨论】:
标签:
node.js
sockets
websocket
【解决方案1】:
一个词 make a custom load balancer 在您的服务器之间分配传入的套接字连接。您要回答问题的第二部分,可以通过 Pub/sub 解决。它是一种消息传递模式,其中不同的组件相互发布和订阅以相互通知和发送数据。只需让所有服务器成为订阅者,然后如果一个服务器发布,则所有服务器都会收到通知。干杯。