【发布时间】:2010-12-16 18:03:55
【问题描述】:
我正在开发一个 Rails 2.3.x 应用程序,它需要异步运行一个漫长而缓慢的任务。
延迟请求直到处理完成有点痛苦。我们很高兴向客户发送“好的,我们已经收到,我们正在处理”式的回复,然后在客户离开后就开始工作。
所以我已经看到了一些执行此操作的方法(例如分叉或使用 cron),但似乎任务队列系统可能是一个更好的主意。
似乎三个主要是:
Sparrow 看起来特别有趣,因为它支持 Memcached,但我不想在没有做出明智决定的情况下只选择一个。有人对最佳实践有任何见解吗?我很想听听您在上述方面的经验,尤其是这种方法或提到的库的任何主要问题。也许有更好的方法来做到这一点,但我完全错过了?
就这样:Rails 3.x 现在不是一个选项,这需要适用于 Rails 2.3.x。
谢谢!
【问题讨论】:
-
也可以试试:navvy 和 delayed_job 对他们都有很好的经验,但没有什么特别的见解
-
你总是可以自己写。根据我的经验,这样做你会更好地理解你自己的问题以及解决方案,它会完全满足你的需要。比起阅读其他人对自己略有不同的问题的解决方案,这比花时间更好。
标签: ruby-on-rails ruby asynchronous