-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Forks
andrewroth edited this page Sep 12, 2010
·
16 revisions
- script/delayed_job / Delayed::Command
- cap tasks
- jewler
- fixed locking to not allow 2nd worker to lock a failed & rescheduled job
- add timeout to job processing
- always return jobs in priority order (no sort_by { rand })
- fix handle_asynchronous to correctly handle punctuated method names
- send_at method
- signal handler chaining
- send_after method (basically same as send_at)
- script/enqueue_job
- job_errors in separate table (Job.has_many :errors)
- wrapped updates in transactions
- Delayed::Worker model, which tracks each job worker process in the DB
- allow for workers to be limited to certain kinds of jobs by setting extra conditions via
Delayed::Job.extra_next_task_conditions
. The main reason for this is to flexibly allow forserver_id
and other such attributes to be used as needed.
- Keep successfully finished jobs around, store creation/start/end timestamps
- Munin plugins (in /contrib) for graphing queue size and average job run time
- server_id column – jobs with this attribute specified should be handled only by workers on the specified machine. we use the hostname. (based on previous work from sbfaulkner)
- more rake tasks (run specific job, lock, unlock)
- I want to delete my fork to clean my account up a bit. I’ll wait till April, if you want this fork it
- based on dsander/delayed_job (recurring jobs)
- add option to specify how many times to recur
- pass a read-only informational hash about the job being run
- allow jobs to declare their own MAX_ATTEMPTS value
- optimized fetching of jobs in huge queues. (added indexing)
- Warning: Priority is reversed, so lower priority jobs will run first.
- changed the daemon configuration from collectiveidea fork to allow use in a sinatra app
- A couple of changes to maintain rails 2.0 compatibility
- Setup a demand based spawner (Still somewhat beta but fully functional)
- Single daemon dispatcher process forks off each job to its own process to run independently
- User set max number of concurrently running jobs
- Restrict workers to specific job types
- Per job MAX_ATTEMPTS
- Uses DataMapper instead of ActiveRecord for ORM.