0
我有许多Quartz Schedule作业,并在我的Java应用程序中执行。 (在我的webapp主动工作运行一个事件)Quartz Java在多台计算机上运行作业
我的webapp在4台机器上运行,且每两个实例,所以:
我怎么能确保同样的工作不能在2运行2次不同的机器?
以及我如何确保在数据库中存在持久性没有问题?
我有许多Quartz Schedule作业,并在我的Java应用程序中执行。 (在我的webapp主动工作运行一个事件)Quartz Java在多台计算机上运行作业
我的webapp在4台机器上运行,且每两个实例,所以:
我怎么能确保同样的工作不能在2运行2次不同的机器?
以及我如何确保在数据库中存在持久性没有问题?
您可以使用JDBC-JobStore配置Quartz集群。基本上所有的实例都应该共享同一个数据库,Quartz将确保只有一个实例运行特定的工作。可以找到更多信息here
你可以使用** DisallowConcurrentExecution **注释你的工作,这将确保多个实例不会同时执行http://www.quartz-scheduler.org/api/2.2.1/org/石英/ DisallowConcurrentExecution.html – Srinivas