Как реализовать обмен сообщениями между процессами в Node.js? | Node.JS [ru] | Серверный JavaScript
Как реализовать обмен сообщениями между процессами в Node.js?
В многопроцессных приложениях на Node.js иногда нужно организовать обмен сообщениями между процессами. Это полезно, когда ваше приложение использует форк процессов или воркеры для выполнения задач параллельно.
В этом примере мы используем встроенный модуль child_process для создания дочернего процесса и организации обмена сообщениями.
const { fork } = require('child_process');
// Запускаем дочерний процесс
const child = fork('child.js');
// Отправляем сообщение дочернему процессу
child.send({ msg: 'Привет, дочерний процесс!' });
// Обрабатываем сообщения от дочернего процесса
child.on('message', (message) => {
console.log('Родитель получил:', message);
});
// Код дочернего процесса (child.js)
process.on('message', (message) => {
console.log('Дочерний процесс получил:', message);
// Отправляем ответ родительскому процессу
process.send({ msg: 'Привет, родительский процесс!' });
});
Использование сообщений между процессами полезно для разделения вычислений и повышения производительности.