2017-09-25 10 views
0

スケーラビリティと、残りのコアを利用して並行性を向上させることで、ノードjsクラスタモジュールが何を想定しているのか理解しています。しかし、ここに私の質問があります:私は毎日午後6時に言うことができる特定の機能を持っている場合、どのように私は一度ではなく午後6時に機能を8回実行するすべての8人を防ぐのですか?ノードjsクラスタモジュールのジレンマ

+0

クラスタモードでnodejsを使用している場合は、要求が1つのワーカープロセスに送信され、マスターワーカーによって処理されます。アルゴリズム –

+0

が必要です。私は定期的な仕事をするための通常のクラスタモードの代わりにcronジョブを作成することを提案します。 –

+0

@ Aky_0788ノードスケジューラを使ったcronジョブでした –

答えて

0

マスタプロセスで間隔を設定し、ランダムなワーカーを選択して毎回ジョブを実行できます。 worker.send(message)機能を使用して、作業者に新しいタスクについて知らせることができます。

もう1つの方法は、アプリが公開するAPIメソッドを準備することです。このメソッドは、受信時にタスクの実行をトリガーします。このAPIメソッドを呼び出すには、通常のcronを使用できます。そうすれば、あなたのアプリはそれがしている仕事を意識しますが、スケジュールは認識しません。