Legendary Trio
devlogquedulascheduling

Devlog #5: Очередь публикаций и ретраи

Публикация в Quedula работает через очередь: когда наступает запланированное время, задача попадает в очередь обработчику, который её выполняет.

Это позволяет отделить момент «когда нужно опубликовать» от момента «когда реально произошла публикация». Обработчик может быть занят другой задачей — ничего страшного, задача подождёт.

Для ретраев мы храним количество попыток и время следующей попытки прямо в записи задачи. При временном сбое задача возвращается в очередь с увеличенным счётчиком и задержкой. После максимального числа попыток — задача помечается как неудачная и пользователь получает уведомление.

Простая модель, которая хорошо работает на практике.