views:

245

answers:

1

Our use of Quartz so far has been to configure the database backed scheduler and any jobs/triggers in the spring config which is then loaded when the app is run on the cluster. Each server in the cluster then shares the triggers so that the triggers are only run by one of the servers each time.

I now want to dynamically create new triggers for existing jobDetail beans (which are managed by Spring) on any one of the servers, but I need all of the servers in the cluster to be aware of this new Trigger. I also need them to be aware of the trigger being removed by one of the servers.

Using the current set up, will this just work? Does quartz periodically check the database for new triggers?

If not, what other approaches might solve this problem?

I'm fairly new to Quartz so apologies if i've missed something fundamental.

Thanks for your help.

+1  A: 

quartz always performs a check against the database when looking for triggers that needs to be executed. so, if one server delete or add a trigger, the other server(s) will automaticly see it.

Salandur
Cheers. I thought this was going to be difficult to test/prove but managed to do it quite easily in the end (just two instances of weblogic running against the same db schema) and it worked. Setting up the trigger on one server could be unscheduled / run by another server.
James Camfield