BSA-модель
Коллеги, всем привет! =)
В своих докладах я довольно часто делаю отсылку к модели BSA (base-service-app), и порой меня спрашивают: «Откуда она вообще взялась?»
Впервые я познакомился с этой моделью в 2019 или 2020 году, когда трудился в E42 (кто знает — тот знает).
Модель BSA хороша тем, что она достаточно явно описывает связь «условного» бизнес-сервиса с необходимыми зависимостями (БД, кэши, очереди и т. д.) и инфраструктурой.
Как говорил классик: «Всё переплетено».
Давайте по порядку.
Базовый слой — это слой инфраструктуры, и именно тут разворачивается наше приложение. Это не просто условная ВМ или кластер Kubernetes — это ещё и необходимая инфраструктура: мониторинг, логирование, трейсинг и дополнительные компоненты.
Сервисный слой — это необходимые вспомогательные сервисы. Наше бизнес-приложение наверняка хранит какие-то данные, ему нужны кэши, а возможно, и очереди.
Слой приложения — это уже само бизнес-приложение.
Благодаря такому разделению удобно работать с зависимостями. Например, мы так выставляли priority class для базового слоя.
Enjoy! =)

7
5November 19, 2025 976 14 1