Я бы хотел использовать Celery (с RabbitMQ как backend MQ) для выполнения задач различного вкуса через разные очереди. Одно из требований заключается в том, что потребление (рабочими) из конкретной очереди должно иметь возможность приостанавливаться и возобновляться.
Сельдерей, похоже, эту возможность посредством вызова add_consumer
и cancel_consumer
. Хотя мне удалось отменить потребление задач из очереди для конкретного работника, я не могу заставить работника возобновить потребление, вызвав add_consumer
. Код для воспроизведения этой проблемы приведен ниже. Мое предположение, вероятно, я пропускаю какой-то параметр, который должен быть предоставлен либо в celeryconfig
, либо через аргументы при запуске рабочих?
Было бы здорово получить несколько свежих пар глаз. В Stackoverflow не так много обсуждений относительно add_consumer и Github. Поэтому я надеюсь, что некоторые эксперты готовы поделиться своими мыслями/опытом.
-
Я запускаю следующее:
ОС Windows, RabbitMQ 3.5.6, Erlang 18.1, Python 3.3.5, сельдерей 3.1.15