Выполнение потенциально дорогих задач - PullRequest
0 голосов
/ 26 февраля 2012

У меня есть tcp-сервер nodejs, который обрабатывает состояние многих дочерних серверов. Когда что-то происходит, сервер состояний говорит дочернему серверу выполнить действие, это может быть потенциально дорого, в большинстве случаев это будет довольно дорого (около минуты), в некоторых случаях это будет сделано за пару секунд.

Из-за того, что делают дочерние серверы (прослушивание веб-сокетов и передача очень большого количества данных назад и вперед очень часто), я могу 'Мы не можем позволить дочернему серверу останавливаться при выполнении этой дорогостоящей задачи.

Очевидно, что nodejs не может создавать новые потоки без какой-либо грязной их реализации.Стоит ли создавать новый процесс для выполнения этой потенциально дорогой задачи, я могу определить, когда она будет дорогой, по команде, отправленной с родительского сервера.

1 Ответ

1 голос
/ 26 февраля 2012

Node.js имеет возможность порождать другие процессы, и он справляется с ними довольно хорошо.Изучите child_processes в документации по node.js и, в частности, команду fork, которая позволяет создавать другие задания node.js и связываться с ними через канал сообщений. Node.js Вилка

http://nodejs.org/docs/latest/api/child_processes.html#child_process.fork

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...