服务器之间可以用websocket保持通信吗?

需求:现在有一个负载均衡服务器和三个服务器,想让负载均衡服务器能感知三个服务器的状态。使用node.js,初步设想是用socket.io的websocket连接来实现这个过程。

socketio.listen(socketio_port).on('connection',(socket)=>{
    //监听服务器加入
    socket.on('join',(obj)=>{
    
    });
    //监听服务器断开连接
    socket.on('disconnect',()=>{
    
    });
});

但是官方文档上给的例子是在客户端引入socket.io.js这个客户端文件,有什么方案是node和node之间用websocket通信的例子吗。。虽然执行环境都是js但是我在node里面引入这个客户端文件,不能使用。正在一点点研究这个200kb的库。。趁着这个事件来提下问。
求告知正确的姿势。。

阅读 8.7k
2 个回答

其实 websocket 只是一个通信协议,并不限制是否使用浏览器。
在 node.js 应用之间使用 websocket 是可以的,使用 socket.io-client。
参见:https://www.npmjs.com/package...

刚好今天遇到这个问题,需要node服务器作为client来请求,socket.io-client好像需要server是socket.io构建的吧,我server用的websocketd,试了下没法使用。

推荐使用 https://github.com/websockets/ws

它就是后端模拟client来进行ws通讯的,并且两端都可以使用。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题