I recently worked on a Grails app that ran as four nodes; one node performed job scheduling and announced itself as the 'master' via a UDP broadcast. If I remember correctly it would send a UDP periodically; when other nodes stopped receiving, another would assign itself as master, start broadcasting and run the jobs instead.
I can't remember if we rolled our own Java plugin, or used something off the shelf, I'll see if I can remember but I do know it worked very well. On Sunday, 28 October 2012 15:58:01 UTC, rakesh mailgroups wrote: > > thanks guys for the recommendation to use Quartz Jdbc thingy. > > Unfortunately, I am not using a relational db!! I'm using MongoDB. > > Rakesh > > On 27 October 2012 16:59, Wesley Hartford <wes...@cutterslade.ca<javascript:> > > wrote: > >> I've been using quartz for years and love it. The JDBC job store can be a >> little tricky to get working, but it gives you just what you're looking >> for, and once it is set up, it is rock solid. Reply if you are having >> trouble setting it up and I'll post the settings I've used. >> >> Wesley >> >> >> On Wednesday, October 24, 2012 1:37:14 AM UTC-7, rakesh mailgroups wrote: >>> >>> Hi, >>> >>> I have some batch jobs running and am using Quartz Schedular. They run >>> based on a specific time schedule (eg 55 and 25 minutes each hour over 24 >>> hours). >>> >>> Thing is, I have (at a minimum) 2 nodes running the same software for >>> disaster recovery reasons. So I need a way to only run a job by one of the >>> nodes. >>> >>> Turns out its quite tricky to get right and I keep finding bugs which >>> are hard to reproduce! >>> >>> The current implementation requires each node to write to the db first >>> to say its going to run the job, then read back the record to see if >>> it succeeded in the write (there's a unique key on the job name) and if so, >>> run the job. >>> >>> However, there seem to be issues with overlapping jobs (I think, hard to >>> diagnose after the fact and they are intermittent). >>> >>> I was wondering if there was an easier solution out there I could easily >>> use? >>> >>> Thanks >>> >>> Rakesh >>> >> -- >> You received this message because you are subscribed to the Google Groups >> "Java Posse" group. >> To view this discussion on the web visit >> https://groups.google.com/d/msg/javaposse/-/ZjGaaSih0SAJ. >> >> To post to this group, send email to java...@googlegroups.com<javascript:> >> . >> To unsubscribe from this group, send email to >> javaposse+...@googlegroups.com <javascript:>. >> For more options, visit this group at >> http://groups.google.com/group/javaposse?hl=en. >> > > -- You received this message because you are subscribed to the Google Groups "Java Posse" group. To view this discussion on the web visit https://groups.google.com/d/msg/javaposse/-/IMcGnkXuL70J. To post to this group, send email to javaposse@googlegroups.com. To unsubscribe from this group, send email to javaposse+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.