[英]Can Resque run jobs in parallel?
Resque 可以同時運行許多類似的作業嗎? 如果是這樣,您將如何設置工人來執行此操作?
我會看一下Resque Pool gem ,它可以很容易地為不同的隊列設置多個工作人員。 然后,您可以按隊列對類似任務進行分組。
如果您還沒有使用某些東西進行進程監控,resque-pool 可以幫助您通過單個守護進程管理您的工作。 它還為您提供了一些方法來監控您的員工正在發生的事情。 此外,它還允許您通過一個簡單的 yaml 文件輕松更改每個隊列運行的工作人員數量。
如果將COUNT
選項傳遞給 rake 任務,則可以運行多個工作程序:
COUNT=5 QUEUE=* rake resque:workers
在生產中,您可以使用God
類的東西來保持您的流程運行。 Resque 項目有一個示例配置腳本,它允許多個工作人員。
如果您使用 monit 進行監控,請注意每個工作人員有一個 pid 文件
#!/bin/sh
cd <path of app>/current/
for i in 3;
do
VVERBOSE=1 PIDFILE=<path of app>/shared/pids/resque_$i.pid RAILS_ENV=production QUEUE=name_of_queue bundle exec rake environment resque:work > <path of app>/shared/log/resque_$i.log
done
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.