Паттерн | Описание | ADR | Пример теста |
---|---|---|---|
Anti-corruption Layer | За интеграцию с внешними системами ответственны отдельные микросервисы-адаптеры, инкапсулирующие в себе знания о внешних системах | ADR | тест |
Пассивные CRUD-сервисы | Микросервисы, отвечающие за доступ к мастер-данным, не обладают дополнительной логикой и не имеют зависимостей помимо своей БД | ADR | тест |
API-Gateway | Внешние для периметра REST-вызовы не должны идти напрямую | <TBD ссылка> | тест |
Оркестратор распределённых транзакций | Запись данных идёт только через оркестратор бизнес-процессов, чтение доступно напрямую | <TBD ссылка> | <TBD ссылка> |
Database per service | К БД имеет доступ только один микросервис | ADR | тест |
Stable Dependencies Principle | Зависимости направлены от менее стабильных микросервисов к более стабильным | <TBD ссылка> | <TBD ссылка> |
Acyclic Dependencies Principle | Граф зависимостей не должен содержать циклов | <TBD ссылка> | тест |
Common Reuse Principle | Зависимость от контекста микросервисов использует внешнеконтекстные API всех микросервисов контекста | <TBD ссылка> | <TBD ссылка> |
... | |||
Добавляйте свои примеры, вместе подумаем, как их покрыть тестами |