2022-08-08 09:37:36
#архитектура
Несколько критериев, когда стоит выделять часть системы в отдельный микросервис компонент.
https://tanzu.vmware.com/content/blog/should-that-be-a-microservice-keep-these-six-factors-in-mind
Multiple Rates of ChangeКогда частота изменений в нескольких компонентах существенно отличается.
Independent Life CyclesВозникает потребность в отдельной кодовой базе, подходах к тестированию, ci/cd пайплайне.
Independent ScalabilityКомпоненты имеют разные требования по производительности и сценарии масштабирования. Например, админка мерчанта и ядро процессинга.
Isolated FailureКогда нужно защитить часть системы от отказов со стороны внешних или внутренних компонентов. Например, научиться выживать при недоступности платежного сервиса.
Simplify Interactions with External DependenciesВыделение компонентов для взаимодействия с внешними сервисами или системами. Например, чтобы уметь безболезненно переключиться на другой платежный сервис.
Так и не понял, чем принципиально отличается от предыдущего - выглядит как частный случай.
The Freedom to Choose the Right Tech for the JobЕсли нужно использовать другой технологический стек для решения какой-то задачи.
2.3K views06:37