2013-08-17 51 views
0

我在heroku上运行一个应用程序,我想执行一个map/reduce样式的操作,我可以在这里向工作人员发送作业,然后一旦结果完成,就启动还原作业。Heroku delayed_job依赖关系

这意味着我需要调用一些(减少)工作为依赖于他人(图)。

我能做到这一点使用Heroku的?

我看到这个叉,但没有积极进行开发。 https://github.com/mceachen/delayed_job

例如,分布式合并排序 - 排序作业和合并作业以及合并作业取决于排序作业中的数据。

回答

0

DelayedJob已经分叉周围不少,而回购可能会产生误导。它仍然在积极利用和开发通过该回购:

https://github.com/collectiveidea/delayed_job

我相信,DelayedJob可以支持你问什么。您可以启动heroku工作人员运行rake jobs:work,这将启动工作人员在DelayedJob队列中进行工作条目搜索。 a)如果可以确保您的排序作业和合并作业按照所需顺序进入DelayedJob队列,那么您的出列作业工人可以交叉排序和合并作业的处理,因为合并作业具有依赖关系一个刚刚发生的分拣工作。

b)分拣作业和合并作业是否可以打包成一个“作业”,其中一个工作人员将这对作业作为一个整体出列,并对它们进行处理?如果你想扩大你的heroku工作人员数量,并且同时有多个并发的DelayedJob工作人员在你的DJ队列中嬉戏,这将是一个更好的解决方案。

+0

是的,谢谢,我可以用一个延迟工作轮询数据库,并添加更多的降低延迟的就业机会。 – foobarometer