我有许多 24/7 运行的后端进程(java 应用程序)。为了监控这些后端(即检查进程是否没有响应并通过 SMS/EMAIL 通知),我编写了另一个应用程序。
旧的后端现在以固定的时间间隔记录心跳,这个新的应用程序检查他们是否定期这样做,并在必要时通知。
现在,我们有两个选择
- 要么将其作为计划任务运行,该任务将在每(比如说)15 分钟后运行并在完成其工作后停止,要么
- 将其作为另一个后端进程运行,睡眠时间为 15 分钟。
我们现在可以预见的问题是,如果这个监控应用程序进入无响应状态怎么办?所以,我的问题是这两种情况有什么区别还是两者都一样?哪种选择更适合我的情况?
环境: Java,托管在 LINUX 服务器上