我们有一个 Spring + JPA Web 应用程序。
我们使用两个运行应用程序并使用相同数据库的 tomcat 服务器。
您的应用程序要求之一是执行 cron\ 计划任务。
经过简短的研究,我们发现 Spring 框架为 cron 作业提供了一个非常直接的解决方案,
(基于注释的解决方案)
然而,由于两个 Tomcat 都运行相同的 Web 应用程序 - 如果我们使用今年 Spring 的解决方案,我们将创建一个非常有问题的场景,其中 2 个 cron 同时运行(每个都在不同的 Tomcat 上)
有什么办法可以解决这个问题吗?也许这个替代方案不符合我们的目的?
thanks!
作为一般规则,您需要保存一个设置来指示作业正在运行。与“Spring Batch”的实现方式类似,您可能希望在数据库中创建一个表,仅用于存储作业执行。您可以选择按照自己的意愿实现这一点,但最终,您的计划任务应该检查数据库以查看是否已在运行相同的任务,如果没有,则继续执行任务。任务完成后,适当更新数据库,以便将来能够继续执行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)