Здравствуйте, Shmj, Вы писали:
S>А если событие не удалось создать — заказ повиснет навсегда?
Ну в первую очередь — механизим retry никто не отменял.
Другое дело откуда запрос на публикацию event пришел.
* если вызывающая сторона ждет завершения публикации — несколько коротких retry и если не прошло, то откатываем транзакцию и фейлим процесс (например, это команда вызванная из API и которая ждет завершения чтобы вернуть HTTP response).
* если завершения текущего процесса никто не ждет (пример — event handler) и по BL можно подождать, то просто retry растягиваются насколько это восможно по логике процесса. не помогли retry — падаем, но тут уже все зависит от деталей текущего бизнес процесса. Где-то можно просто записью в лог обойтись, а где-то придется может что-то и в БД записать.