parkan has asked for the wisdom of the Perl Monks concerning the following question:
I need to run background tasks at arbitrary points in the future, with queue behavior if multiple execute at or near the same time, ability to manipulate the task list, retry (ideally with exponentially longer retry window), etc.
In Ruby, there is delayed_job (and php port djjob), which does this pretty much perfectly.
The closest Perl solution I could find was Beanstalk::Job, but this doesn't appear to support execution in the "far future" (next week). There is also Schedule::At, which does (and also allows manipulation of the tasks) but it runs external commands and the jobs appear to be executed straight with no queueing mechanism
Is there something that's more like delayed_job? Do I need to roll my own? Also: beanstalkd appears to be memory resident, mostly, and I'd prefer to have a db/disk backed queue
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Equivalent for delayed_job?
by Zzenmonk (Sexton) on May 24, 2013 at 07:32 UTC | |
by parkan (Initiate) on May 24, 2013 at 15:29 UTC | |
by Zzenmonk (Sexton) on May 25, 2013 at 16:22 UTC | |
|
Re: Equivalent for delayed_job?
by vsespb (Chaplain) on May 24, 2013 at 11:03 UTC | |
by parkan (Initiate) on May 24, 2013 at 14:55 UTC | |
by vsespb (Chaplain) on May 25, 2013 at 13:39 UTC | |
|
Re: Equivalent for delayed_job?
by rahulruns (Scribe) on May 24, 2013 at 04:45 UTC | |
by vsespb (Chaplain) on May 24, 2013 at 11:40 UTC | |
by parkan (Initiate) on May 24, 2013 at 14:56 UTC | |
by vsespb (Chaplain) on May 25, 2013 at 13:41 UTC |