デーモンとして実行するJythonスクリプトがあります。起動し、サーバーにログインしてから、処理するものをチェックして処理し、5秒間スリープするループに入ります。
プロセスが実行されていることを確認するために5分ごとにチェックし、実行されていない場合は再開するcronジョブがあります。
私には別のcronジョブがあり、1日1回、何があってもプロセスを再開します。これを行うのは、サーバーへのデーモンの接続が失敗することがあり、これがいつ発生したかを知る方法がないためです。
この「解決策」で私が抱えている問題は、プロセスを強制終了して別のプロセスを開始する2番目のcronジョブです。スリープ中に殺されても大丈夫ですが、デーモンが殺されたときに処理の途中であると、悪いことが起こる可能性があります。
デーモンプロセスを単に強制終了するのではなく、停止する適切な方法は何ですか?
これについては、一般的に、Pythonで、またはJavaで標準的な方法がありますか?将来的には、Jythonではなく純粋なPythonに移行する可能性があります。
ありがとう