Что такое heartbeat в celery?

Я уже запутался в определениях heartbeat и для чего он нужен. Где-то пишут что heartbeat нужен для проверки доступности брокера, где-то для того что бы проверять работоспособность воркера, где-то про доступность процесса celery. Поэтому я не могу понять что именно я могу ждать от него. Допустим у меня есть 2 воркера, первый слушает очередь для результата выполнения задачи от второго воркера, второй воркер принимает задачи от первого. Вот что будет если у меня второй воркер застрял с долгой задачаей в solo режиме и не отправляет heartbeat ? Не понятно, вроде задача должна сразу попасть в очередь обратно, но нет, она вернётся только через установленное время в visibility_timeout. Крайне не понятно поведение, если кто-то может дать развернутое и полное определение для чего нужен heartbeat, буду очень признателен


Ответы (0 шт):