Недостатки CQRS¶
Более сложная архитектура¶
Разработчикам приходится писать дополнительные запрашивающие сервисы, которые отвечают за обновление представлений и обращение к ним. Также усложняется также администрирование и обслуживание дополнительных, часто разнообразных, хранилищ.
Отставание репликации¶
Как можно понять, между публикацией события командной стороной и его обработкой сервисом запросов проходит некоторое время. Клиентское приложение, которое обновляет агрегат и сразу же обращается к представлению, может получить предыдущую версию агрегата.
Одно из решений заключается в том, чтобы API для команд и запросов предоставляли клиентам сведения о версии. Это позволит определить, устарел ли результат запроса.
Мобильное приложение или одностраничное веб-приложение, реализующие пользовательский интерфейс, могут справиться с отставанием репликации засчет обновления локальной модели в ответ на успешное выполнение команды без применения запроса.
Дата создания : 29 июля 2022 г.