Спасибо, Игорь, выбор стал понятнее
Вот здесь неплохо описаны боли, ждущие с ES
https://chriskiehl.com/article/event-sourcing-is-hardЧто почувствовал на себе из того что вспомнил:
- нет готовой инфраструктуры - реплей стрима для воссоздания агрегата, десериализация событий - писать самому
- создание новой проекции - надо делать аудит лог, и проигрывать его в проекцию
- eventual consistency lag в consumer, если нужно что-то прочитать из проекции
- вследствие eventual consistency/CQRS на разных базах - события приходят не по очереди/с дубликатами
- транспорт потерял событие N, событие N+1 пришло - цепочка N, N+1 не собралась, проекция зависла в ожидании N - не заложил повторную отправку. Возможно причины были в работах по переезду на другой сервер, что-то очень неудачно наложилось - но потерянное сообщение факт
До каких болей не дошел, но они очевидны на горизонте больше года
- версионирование событий (апдейтеры)
- большое количество событий в стриме (снэпшоты)
- а что если мы спроектировали события неправильно?