24 時間年中無休で実行される多数のバックエンド プロセス (Java アプリケーション) があります。これらのバックエンドを監視する (つまり、プロセスが応答していないかどうかを確認し、SMS/EMAIL 経由で通知する) ために、別のアプリケーションを作成しました。
古いバックエンドは定期的にハートビートをログに記録し、この新しいアプリケーションは定期的に行っているかどうかを確認し、必要に応じて通知します。
さて、2つのオプションがあります
- スケジュールされたタスクとして実行し、(たとえば)15分ごとに実行され、ジョブの実行後に停止するか、
- 15 分のスリープ時間で別のバックエンド プロセスとして実行します。
現時点で予想できる問題は、この監視アプリケーションが応答しない状態になったらどうなるかということです。だから、私の質問は、両方のケースに違いはありますか、それとも両方が同じですか? 私の場合、どのオプションがより適していますか?
これは特定のケースであり、これまたはこれと同じではないことに注意してください
環境: LINUX サーバーでホストされる Java