Chris Kalaboukis wrote:> Hi guys: just got into Rails about a month ago and an about to launch
> something.
>
> I use Heroku and they limit the execution time of pages to 30 seconds. i
> have a process which takes a lot longer than that. So i''m trying
to do a
> delayed job.
>
> The docs on delayed job must be for the pros out there cause I
can''t
> seem to find out the answers to a few simple questions..
>
> - where do i put the file with the job in it
> - what do i name it
> - how do i call it
> - how do I put it in the queue
> - can I run it say, every 5 minutes?
>
> Anyways, hope someone out there can help me out...
>
> Thanks...Chris
This railscast should answer your first few questions -
http://railscasts.com/episodes/171-delayed-job
I''m using DJ on Heroku and I''m running jobs in a recurring
fashion. I
kick things off from the console. I just call some methods that I wrote
that do nothing but enqueue some jobs. I have the recurring jobs
re-enqueue themselves upon completion. Here''s an example:
def enqueue_media_cleanup
#this is what I run from the Heroku console
Delayed::Job.enqueue ClearOldEventsJob.new(), 0, 15.minutes.from_now
Delayed::Job.enqueue DumpOldMediaJob.new(), 0, 2.minutes.from_now
end
def purge_expired_events
#some code to do some stuff...
#ClearOldEventsJob just runs/calls purge_expired_events
Delayed::Job.enqueue ClearOldEventsJob.new(), 0, 6.hours.from_now
end
There are other ways to do it but this has been working well for me.
--
Posted via http://www.ruby-forum.com/.
--
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en.