I'd consider using delayed_job. I don't think it's overkill. Polling sucks (at least, app-exposed polling does), and with delayed_job you can queue your trend creation in the background when the appropriate thing happens, instead of continually checking if it's required.
def trendy_action something_trendy Trend.send_later :data => data end Using threads in any way within a rails instance is a bad idea, because it will cause problems with passenger and friends. It might seem to work in development for a bit, but you'll definitely have problems down the road. --ben_h On 2010/10/13, at 10:42, Joshua Partogi <[email protected]> wrote: > Hi all, > > I have another noobie question. After looking at last night > presentation about Rails 3, I am wondering where do we put piece of > code that runs on a separate thread for a long time every 5 seconds? > e.g > > Thread.new do > while true > queue = check_whether_there_is_something_new_in_the_queue > > while queue > 0 > Trends.create(:data => queue.data) > end > > sleep 5 > end > end > > > 1. I don't really like using cron to call `script/rails runner` as > that will load the whole rails library which will choke the server > because this process is run every 5 seconds. > 2. I don't know about resque (which was mentioned by Ryan) yet, but > since resque is a separate webapp, would resque know anything about > the models in my Rails app? > > > Any input is highly appreciated. > > Kind regards, > Josh > > -- > http://twitter.com/scrum8 > > -- > You received this message because you are subscribed to the Google Groups > "Ruby or Rails Oceania" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/rails-oceania?hl=en. > -- You received this message because you are subscribed to the Google Groups "Ruby or Rails Oceania" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rails-oceania?hl=en.
