У меня есть следующий сценарий
- Изменить флаг = начало (в базе данных)
- Выполнить некоторую обработку
- Обновить флаг обратно до Готово(в базе данных)
Предположим, что система выходит из строя во время шага 2. В идеале, я хотел бы установить флажок обратно на Завершено.Но из-за сбоя системы этого не происходит, и он заходит в тупик для этой задачи.
Какие стандартные решения / подходы / алгоритмы используются для решения такого сценария?
Править: Как возникает тупик? Задача будет выбрана только в том случае, если Флаг = Закончен.Флаг = начало означает, что он находится в процессе чего-то.Поэтому, когда происходит сбой, задача не завершается, но флаг также не устанавливается на Завершить после запуска системы.Так что задание больше не будет выбрано.