У меня длительный бизнес-процесс (недели, а не минуты). Запуск процесса инициируется действием пользователя. Проблема, с которой я столкнулся, заключается в том, что следующий шаг в саге произойдет в одном из двух мест: либо во втором взаимодействии с пользователем, либо, если по истечении, скажем, 1 недели, пользователь не выполнил действие, то другой момент в саге должен быть запущен.
Является ли сага правильным механизмом для использования в этом бизнес-процессе? Если да, то как это достигается? Если сага не подходит для этой задачи, есть ли лучший механизм, чем просто выполнение ночных пакетных заданий для базы данных? Мое отвращение к запуску ночных пакетных заданий вызвано просто размером таблицы базы данных, которую мне придется нажать, чтобы запросить следующую точку саги.