我需要在一些服务器与主服务器之间立即同步一些数据。
所以我认为最好和最简单的方法是在 NodeJS 中使用 WebSocket。我对 socket.io 模块有一些经验,但它提供了在浏览器中使用的客户端。我查看了engine.io,它看起来也像 socket.io。
是否有任何库可以在没有浏览器的情况下将 WebSocket 连接作为客户端?(或任何适合我情况的替代安全协议?)
如果您要跨服务器传输数据,则不仅限于使用 HTTP 协议。相反,您可以使用原始 TCP 套接字。这是您制作监听服务器的方式:
var net = require('net');
var server = net.createServer(function(socket) {
// do what you need
socket.write();
socket.end();
});
server.listen(8080);
这就是您从另一个 Node 进程连接到它的方式:
var net = require('net');
var client = net.connect({port: 8080}, function() {
// we can send data back
client.write();
});
client.on('data', function(data) {
// receive data here
});
client.on('end', function() {
// we received a FIN packet
});