2016-03-29 5 views
0

私たちはサーバ上の静的キューにいくつかのタスクを持っています。サーバーがシャットダウン(または再起動)すると、これらのタスクが失われないようにするため、DB構造に格納します。起動時に、このDB構造は静的キューにダンプされ、これらのキューに入れられたタスクの処理は続行されます。node.jsシャットダウン/再開オブザーバ

シャットダウンを検出し、シャットダウンを停止してから、上記のDBストレージ機能を実行したらどのようにシャットダウンを続けることができますか?どのようなコンテキストからこのシャットダウン観測を行うべきか?

+0

あなたの質問には、あらゆる種類の回答を提供するのに十分な詳細がありません。 –

+0

@DerickBaileyが、私が達成しようとしているものにちょっとした詳細を追加しました。あなたのシナリオについての詳細を提供するために質問を編集してください。 – hownowbrowncow

答えて

1

私はあなたの質問を理解しているかどうかはわかりませんが、スクリプトを終了してクリーンアップを行う前にコードを実行したいと思っています。

あなたはSIGINT(ユーザーはCtrl + Csのスクリプト)とuncaughtException(スローされた例外がキャッチされていない)、exit(スクリプトの終了)を含め、様々なイベントのために、あなたのスクリプトの終了ハンドラを登録するprocess.on(event, handler)を使用することができます。 this answerをご覧ください。

+0

これはまさに正しいことです。基本的には、現在の操作状態を記録し、起動時に続行します。リンクされているあなたの答えは、 'プロセス 'ですか?このイベントハンドラはどのようなコンテキストで配置されていますか?それはコードベース内に任意に配置できますか? – hownowbrowncow

+0

終了ハンドラが登録される前にエラーが発生しても、それは考慮されず、あなたは実行できませんので、スクリプトの冒頭に(おそらくすべての 'require'sの後に)配置することをお勧めしますあなたの現在の状態を記録する。 – christophetd

関連する問題