Работа
должна
двигаться.
У задания есть очередь. У исполнителя — предел. У результата — понятный путь назад. Организуйте фоновые процессы так, чтобы всё это было видно.
В диспетчерскую ↗Работа в движении.
К выполнению
4Здесь появятся задания
после следующего шага.
В работе
0Здесь появятся задания
после следующего шага.
Результат
0Здесь появятся задания
после следующего шага.
notifications
Ограниченный размер и срок
Выберите задание и проведите его через этапы.
№ 01
Длинная задача
не должна держать
короткую в заложниках.
Разделяйте задания по длительности и ресурсу. Ограничивайте параллелизм. Повторяйте работу только тогда, когда повтор безопасен.
Начать с модели очереди →На рабочий стол.
ИНСТРУКЦИИ ПО ЭКСПЛУАТАЦИИЖизненный цикл фоновой задачи
Состояния, необходимые для эксплуатации очереди.
Читать материал ↗02 / OverpuulПовторы без лавины задач
Как очередь помогает пережить сбой зависимости.
Читать материал ↗03 / OverpuulПараллелизм и остановка воркеров
Настройка пула под характер нагрузки.
Читать материал ↗Ответы на важные вопросы
Очередь гарантирует однократное выполнение?
Обычно нужно рассчитывать на повторную выдачу. Идемпотентность бизнес-действия остаётся обязанностью обработчика.
Что лучше: больше воркеров или больше параллелизма?
Решение зависит от ресурсов и ограничений зависимостей. Измеряйте время ожидания, длительность и потребление ресурсов вместе.
Можно ли класть большой файл в сообщение?
Практичнее хранить файл отдельно и передавать проверяемую ссылку с метаданными. У сообщения должны быть ограниченный размер и понятный срок жизни.
Когда задача считается просроченной?
Когда результат уже не нужен по бизнес-правилам, даже если попытки ещё остались. Срок актуальности следует указывать отдельно от тайм-аута исполнения.