【问题标题】:Heroku delayed_job dependenciesHeroku 延迟作业依赖项
【发布时间】:2013-08-17 15:40:59
【问题描述】:

我在 heroku 上运行一个应用程序,我想执行一个 map/reduce 样式的操作,我可以在其中向工人解雇工作,然后一旦结果完成,就解雇减少工作。

这意味着我需要指出一些(减少)工作依赖于其他工作(地图)。

我可以使用 heroku 来实现吗?

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

例如,分布式合并排序 - 具有排序作业和合并作业和合并作业取决于来自排序作业的数据。

【问题讨论】:

    标签: ruby-on-rails heroku delayed-job


    【解决方案1】:

    DelayedJob 已经分叉了很多,并且 repos 可能会产生误导。它仍在通过此 repo 积极使用和开发:

    https://github.com/collectiveidea/delayed_job

    我相信 DelayedJob 可以支持您的要求。您可以启动 heroku worker 来运行 rake jobs:work,这将启动一个 worker 来咀嚼 DelayedJob 队列中的作业条目。

    a) 如果可以确保您的排序作业和合并作业以所需的顺序进入 DelayedJob 队列,那么您的出队工作人员可以交错处理排序和合并作业,因为合并作业依赖于刚刚发生的排序作业。

    b) 排序作业和合并作业是否可以打包成一个“作业”,其中工作人员将这对操作作为一个整体出列,并同时处理它们?如果您想扩大 heroku 工作人员的数量并让多个并发的 DelayedJob 工作人员同时在您的 DJ 队列中大吃大喝,这将是一个更好的解决方案。

    【讨论】:

    • 是的,谢谢,我可以使用延迟作业来轮询数据库并添加更多减少延迟作业。
    猜你喜欢
    • 2011-03-13
    • 2012-10-28
    • 1970-01-01
    • 2011-05-14
    • 1970-01-01
    • 2013-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多