Выбор ответа Middle Celery и очереди спрашивают часто обновлено

Что даёт acks_late

Вопрос

Что меняет acks_late=True у задачи Celery?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Подтверждение после выполнения: при падении воркера задача повторится. По умолчанию Celery подтверждает сообщение при получении, и падение воркера посередине теряет задачу.

Варианты ответа

  1. Задача выполнится позже запланированного, после подтверждения от брокера
  2. Подтверждение после выполнения: при падении воркера задача повторитсяправильный ответ
  3. Задача не будет повторена ни при каких сбоях, даже при retry()
  4. Результат задачи сохраняется дольше в result backend, до ручной очистки

Разбор

По умолчанию Celery подтверждает сообщение при получении, и падение воркера посередине теряет задачу. С acks_late подтверждение отправляется после завершения, поэтому сбой приводит к повторной доставке. Это семантика «как минимум один раз», и задача должна быть идемпотентной. На время запуска и хранение результата настройка не влияет.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.