Микросервисная архитектура — это стиль проектирования высокоавтоматизированных, эволюционирующих программных систем, состоящих из микросервисов, ориентированных на потребности»
подход к разработке единого приложения в виде набора небольших сервисов, работающих в отдельных процессах и взаимодействующих с применением упрощенных механизмов. [...] построенных вокруг бизнес-потребностей и развертываемых независимо с помощью полностью автоматизированного механизма»
Всегда рассматривайте другие, более простые подходы, такие как сервисы-делегаты, описанные выше в этой главе, прежде чем прибегать к Event Sourcing для реализации конкретного микросервиса.
Следуя идее, лежащей в основе CQRS, вы не должны пытаться решать проблемы хранения данных, управления ими и обработки запросов в одной и той же системе. Эти проблемы должны решаться независимо друг от друга.
В целом есть три человеческих фактора, оказывающих наибольшее влияние на систему микросервисов: размер команды, навыки работы в ней и координация между командами.