2016-04-12 13 views
5

を再起動しても、私はノードのjs で私のアプリを持っていると私は彼らがそのスケジュールされた時間
上で実行することにしたい。しかし、問題は私のサーバーであればそれとの間にあるそれらを実行しますクラッシュ/停止/再起動すると、それらのスケジュールされたジョブは永続化されず、実行されません。
また、私のすべてのジョブは、1つのプロセスだけを使用してスケジュールされ、実行されますが、複数のプロセスでそのジョブを実行する必要があります。
サーバが稼働していなくても、私のノードサーバが以上を再起動しても、私のすべてのジョブをに保存して実行します。

アジェンダ - 私は使用したくないmongoDBを使用しています。
ノード -Scheduler - cronジョブを保持することはできません
は私のcronジョブを持続し、自分のノードサーバが

var ctab = require('crontab'); 
    ctab.load(function(err, crontab) { 
     var job = crontab.create('* * * * * *'); 
     var jobs = crontab.jobs(); 
     crontab.save(function(err, crontab) { 
    }); 
}); 

+0

コードやその他の情報を追加しない場合は、お手伝いできません。 – acostela

+0

cronジョブを永続化でき、システムを再起動しても実行できるノードパッケージを探しています サーバが再起動すると、スケジュールされたすべてのジョブが消えてしまいました。 –

+0

@ShubhamTripathi、なぜあなたはアジェンダを使用できませんか?それを試しましたか?私もこのようなものが必要です、私は議題が正しい選択でなければならないと思います。 –

答えて

2

MySQLを使用する場合は、あなたがあなた自身のソリューションを構築するために必要な他の例では、このNPM package

で試すことができます。この場合、スケジュール状態とルールを格納するコレクション/テーブルを作成しました。その後、サービスがクラッシュまたは再起動した場合は、すべてのスケジュールをデータベースから取得し、app.listenイベントから再開することができます。