Resque: один рабочий на очередь

В настоящее время у меня есть проект Rails 3.0 с Ruby 1.9.2 и Resque.

В моем приложении есть несколько рабочих классов и несколько очередей, которые создаются динамически (во время выполнения). Кроме того, запущено несколько рабочих процессов, которые могут работать с любыми очередями, потому что на момент запуска нет существующих очередей, и их невозможно предсказать:

$ COUNT=3 QUEUE=* rake resque:workers

Очереди a созданы на основе проекта 's id:

@queue = "project_#{project.id}".to_sym

Для данной очереди их задания должны обрабатываться по порядку и по одному. Моя проблема в том, что, имея несколько рабочих, несколько заданий обрабатываются параллельно.

Есть ли способ установить максимальное количество рабочих в очереди (1)? Есть ли способ заблокировать очередь во время обработки задания?

Спасибо!

7
задан Henrique Zambon 13 February 2012 в 19:09
поделиться