Мені потрібна допомога щодо спілкування двохсервери, що використовують "мережеву" бібліотеку. У мене є два сервери: головний і ведений. Мета така: коли головний сервер опускається, ведений встає і продовжує роботу.
Ну, це мій код:
// 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 !");
}
});
Як я можу надіслати повідомлення МАЙСТЕР -> РАБ?
Дякую.
Відповіді:
0 для відповіді № 1Ви можете використовувати модуль кластера (https://nodejs.org/api/cluster.html) для створення логіки ведучий-підлеглий.
В основному ваш перший процес повинен бути майстрома дитина (дитина) може бути рабом (-ами); тоді діти могли, наприклад, щохвилини запитувати майстра про його статус; Якщо цей не відповідає, це означає, що головний процес не працює, і на той момент ви можете зробити будь-яку логіку, яку хочете.
Ви можете використовувати worker.send(msg)
і process.send(msg)
і змусити їх відповідно слухати message
подія для вирішення проблеми.
process|worker.on("message", function(msg) {
// Code logic
});