План выполнения задач / Рабочие заметки
Жизненный цикл фоновой задачи
Состояния, необходимые для эксплуатации очереди.
Разделите приём и выполнение
Подтверждение постановки означает, что задача принята, а не завершена. Возвращайте идентификатор, по которому можно узнать конечный результат.
Определите владение
Используйте предусмотренный очередью механизм блокировки или видимости. Для долгой работы продлевайте владение только пока исполнитель способен продолжать.
Зафиксируйте завершение
Согласуйте запись результата и подтверждение сообщения. Повторная выдача возможна, поэтому бизнес-эффект должен выдерживать повторное исполнение.