Quartz Java在多台机器上运行作业

Quartz Java在多台机器上运行作业,java,quartz-scheduler,quartz,Java,Quartz Scheduler,Quartz,我在Quartz Schedule中有许多作业,我在java应用程序中执行。 (我的webapp上的一个事件激活了要运行的作业) 我的webapp在4台机器上运行,每台机器上有两个实例,因此: 如何确保同一作业不会在两台不同的机器上运行2次 以及如何确保数据库中的持久性没有问题?您可以使用JDBC JobStore配置Quartz群集。基本上,所有实例都应该共享同一个数据库,Quartz将确保只有一个实例运行特定的作业。可以找到更多信息您可以使用DisallowConcurrentExecuti

我在Quartz Schedule中有许多作业,我在java应用程序中执行。 (我的webapp上的一个事件激活了要运行的作业)

我的webapp在4台机器上运行,每台机器上有两个实例,因此:

如何确保同一作业不会在两台不同的机器上运行2次


以及如何确保数据库中的持久性没有问题?

您可以使用JDBC JobStore配置Quartz群集。基本上,所有实例都应该共享同一个数据库,Quartz将确保只有一个实例运行特定的作业。可以找到更多信息

您可以使用DisallowConcurrentExecution对作业进行注释,这将确保多个实例不会同时执行