【发布时间】:2012-03-14 06:54:27
【问题描述】:
我有 M 个要处理的任务和 N 个可用的并行处理资源(想想 Herko 或 EC2 实例上的工作线程),其中 M >> N。
我可以推出自己的系统,但似乎已经有一个经过调试的包或 gem:你有什么建议? (现在我想起来了,我可以折磨 Delayed::Job 来这样做。)
这些任务几乎可以用任何语言编写——即使是 shell 脚本也可以完成这项工作。 “母船”是带有 PostgreSQL 数据库的 Ruby On Rails。基本思想是,当资源准备好处理任务时,它会向母船询问队列中下一个未处理的任务并开始处理它。如果作业失败,则在放弃之前重试几次。结果可以进入平面文件或写入 PostgreSQL 数据库。
(而且,不,这不是为了生成垃圾邮件。我正在研究几个大型社交网络的degree distribution。)
【问题讨论】:
标签: ruby ruby-on-rails-3 parallel-processing