bik*_*shp 2 ruby background resque ruby-on-rails-3
由于背景过程繁重,我们需要多个服务器才能进行后台处理.我们正在使用resque来处理后台工作.由于每台服务器上的resque工作人员将执行类似的任务,最好的方法是什么?
我喜欢第一个解决方案.但这有什么限制吗?
谢谢.
Win*_*eld 13
您应该能够在任何数量的服务器上传播您的Resque工作者而不会出现任何问题.
应使用Resque工作队列来分类和组织不同类型的工作.
我个人认为每个工人都应该能够处理各种类型的工作,因此您可以有效地利用资源.
话虽这么说,我改变了不同工作人员处理队列的优先顺序,以便即使大多数资源专用于更高优先级的工作,给定类型的工作也可能找到工作人员帮助.
例如,有6名工人和3种类型的queus:
Queues:
-------
critical - top priority jobs
email - time-sensitive, but not critical
maintenance - background work, to be done whenever
Workers w/ Queues
-----------------
1: critical, email, maintenance
2: critical, email, maintenance
3: critical, email, maintenance
4: critical, email, maintenance
5: critical, maintenance, email
6: critical, maintenance, email
Run Code Online (Sandbox Code Playgroud)
这个设置保证关键工作将在任何工人的任何其他工作之前处理.但是,如果系统被电子邮件作业淹没,如果需要进行维护工作,则只会阻止2/3的工作人员.
希望您可以将此示例推断到您的队列和优先级.
归档时间: |
|
查看次数: |
1902 次 |
最近记录: |