如何检查nodejs套接字是否存在于另一个nodejs服务器上

时间:2015-09-16 10:04:29

标签: node.js socket.io

我想在两台服务器上设置nodejs聊天应用程序,但我担心的是节点会检查想要在套接字上发送消息的用户是否连接在不同的套接字上。

  • 假设nodejs1在server1上并在3001上列出,而nodejs2在3002上列在server2上
  • 用户1连接到3001,用户2连接到3002
  • 用户1想要向用户2发送消息
  • 用户1和用户2套接字存储在db

这种沟通是否可行?

1 个答案:

答案 0 :(得分:0)

检查https://github.com/indutny/sticky-session是否可以为您解决问题,就好像您将使用socket.io

一样

Socket.io正在执行多个请求以执行握手并与客户端建立连接。对于群集,这些请求可能会到达不同的工作人员,这将破坏握手协议。

Sticky-sessions模块使用其IP地址平衡请求。因此,客户端将始终连接到同一个工作服务器,而socket.io将按预期工作,但是在多个进程上!