我目前有一個Rails 3.0項目,包含Ruby 1.9.2和Resque。Resque:每個隊列有一名工人
我的應用程序有多個工作者類和多個隊列,它們是動態創建的(在運行時)。此外,還有多個工人開始是自由地在任何隊列工作,因爲在啓動時不存在任何現有的隊列,他們無法預測:
$ COUNT=3 QUEUE=* rake resque:workers
隊列基於對project
的創建編號:
@queue = "project_#{project.id}".to_sym
對於給定的隊列,他們的作業必須按順序處理,並且一次處理一個作業。我的問題是,通過讓多個工作人員並行處理多個工作。
有沒有一種方法可以設置每個隊列的最大工作數(至1)?有一種方法可以在作業正在處理時鎖定隊列嗎?
謝謝!
看起來不錯@lacco,謝謝!你的問題與我的問題非常相似,所以我很快就會看看你的解決方案。 – 2012-06-07 20:39:55