Есть ли функциональность Celery, аналогичная функциональности RQ? - PullRequest
0 голосов
/ 14 мая 2018

RQ предоставляет метод .work(burst=True) для своих работников, которые хорошо подходят для интеграционных тестов, когда у вас есть код, который ставит задачу в очередь, а затем хочет, чтобы эта задача выполнялась синхронно.

Я не могу найти какую-либо функциональность на Celery , которая работает так.Пожалуйста, помогите!

1 Ответ

0 голосов
/ 15 мая 2018

Нет burst mode в celery, но есть опция CELERY_ALWAYS_EAGER для тестирования:

CELERY_ALWAYS_EAGER

Если это True, все задачи будутвыполняется локально путем блокировки до тех пор, пока задача не вернется.apply_async () и Task.delay () вернут экземпляр EagerResult, который эмулирует API и поведение AsyncResult, за исключением того, что результат уже оценен.

То есть задачи будут выполняться локально, а не отправляться вочередь.

http://docs.celeryproject.org/en/3.1/configuration.html#celery-always-eager

...