Запуск обработчика NServiceBus Saga после длительного периода бездействия

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

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


person ilivewithian    schedule 10.04.2013    source источник


Ответы (1)


Да, саги созданы именно для таких сценариев.

person Udi Dahan    schedule 11.04.2013