-1

I'm needing to execute a process in the future, let's say 20min, based on some event happening, but I may need to cancel that scheduled process depending on different factors. Or , i may need to restart the timer on the job, depending on another event....etc. You get the idea. All different permutations of this. Does anyone know of a good technology for this need? Maybe quartz(does quartz suck? does it do all these things?), maybe activemq, maybe some other job scheduling technology? Thanks! -Ron

Ron Stevenson
  • 166
  • 1
  • 13

1 Answers1

0

ActiveMQ's scheduler is a good fit for this. The pattern can go something like:

  1. Kick off a process (get some identifier)
  2. Send a message to the ActiveMQ scheduler to fire in x time period
  3. Message Consumer receives the timer message, pulls the identifier to check on the status
  4. If process is done.. continue and finish up
  5. If process needs more wait time, send another timer message to ActiveMQ

Everything is asynchronous, and code required is very minimal. The big advantage of using ActiveMQ is you can have multiple consumers listening for the scheduled message to provide for high availability.

Matt Pavlovich
  • 4,087
  • 1
  • 9
  • 17