Межпроцессное взаимодействие между несколькими приложениями nodejs
Я работаю над проектом, в котором я использую nodejs. Проект запускает несколько приложений (процессов) nodejs одновременно. Я хочу обмениваться данными между этими процессами и синхронизировать их выполнение. Есть ли в nodejs что-то похожее на "очередь сообщений" и "семафоры" для совместного использования данных и синхронизации выполнения процесса. Я знаю, что nodejs имеет асинхронный ввод-вывод, и мне не следует использовать блокирующие операции ввода-вывода в моем приложении, но некоторые операции чтения / записи файлов в приложении требуют блокирования ввода-вывода.
Я могу использовать socket.IO для обмена информацией, но синхронизация с использованием socket.io становится беспорядочной.
Короче говоря, я ищу модуль узла, который может разместить общую очередь сообщений для IPC, а также действовать как планировщик для блокировки и запуска процессов в приложении.
Любая помощь будет оценена. Благодарю вас.
2 ответа
Google "шина сообщений nodejs" - существует множество альтернатив Socket.io и ZeroMq, в том числе Simple Bus и Postal.js
Вы можете попробовать ZeroMQ, он имеет привязки для node.js: http://www.zeromq.org/bindings:node-js