АРХИТЕКТУРА

Слоистая архитектура без лишней сложности

Хорошие границы модулей упрощают тестирование, сопровождение и замену реализаций.

Начинайте с ответственности

Разделяйте компоненты там, где различаются причины изменения: транспорт, предметная логика, хранение данных и внешние интеграции. Не создавайте отдельный сервис только потому, что его можно вынести в контейнер.

Держите контракты явными

На границах модулей фиксируйте формат данных, обработку ошибок, тайм-ауты и требования к повторным запросам. Узкий контракт обычно полезнее общей абстракции с множеством необязательных параметров.

Проверяйте эксплуатационную цену

Сеть, наблюдаемость, управление секретами и развертывание — часть архитектуры. Перед разделением системы сравните ожидаемую независимость команд с ценой распределённого взаимодействия.

← Все заметки