Node.js:两个服务器之间的通信(net)

Node.js : Communication between two servers (net)

本文关键字:之间 通信 net 服务器 两个 js Node      更新时间:2023-09-26

我需要使用'net'库的两个服务器之间的通信的帮助。我有两个服务器进程:一个主服务器和一个从服务器。目标是:当主服务器关闭时,从服务器站起来并继续工作。

嗯,这是我的代码:

    // MASTER
    var server = net.createServer(function (conn) {
        conn.on("error", function() {
        });
    });
    server.listen(61337, "localhost", function () {});
    // SLAVE
    var socket = new net.Socket();
    socket.connect(61337, "localhost", function () {
    });
    socket.on('error', function (exc) {
        if((""+exc) == "Error: read ECONNRESET") {
            console.log("ALERT : MASTER is down !");
        }
    });

如何发送消息MASTER -> SLAVE ?

谢谢。

您可以使用集群模块(https://nodejs.org/api/cluster.html)创建主从逻辑。

基本上你的第一个进程应该是主进程,子进程可以是从进程;例如,孩子们可以每分钟询问一次主人的状态;如果这个没有回复,这意味着主进程已经关闭,此时你可以做任何你想做的逻辑。

可以使用worker.send(msg)process.send(msg)分别监听message事件来处理响应。

process|worker.on('message', function(msg) {
    // Code logic
});