Перейти к содержанию

Побег из монолитного ада

Приложение представляет собой монолит гексагональной архитектуры. Состоит из бизнес-логики, окруженной адаптерами, направленными извне (API, веб-интерфейс), так и вовне (БД, внешние сервисы).

Недостатки влияют не на функциональные требования (можно реализовать бизнес-требования любым способом). Однако есть требования к качесту обслуживания, они же нефункциональные требования или атрибуты качества.

Что есть микросервисная архитектура (микросервисы)? — это стиль проектирования, который разбивает приложение на отдельные сервисы с разными функциями, каждый сервис имеет чёткий перечень связанных между собой обязанностей. То есть — масштабирование по оси Y куба масштабирования. Также стоит отметить естественным (в этом подходе) образом появляющуюся модульность, когда каждый сервис представляет собой отдельный модуль.

Ключевой особенностью микросервисов является то, что сервисы слабо связаны между собой и взаимодействуют друг с другом только через API. Слабую связанность обеспечивает, в частности, тот факт, что у каждого сервиса — своя БД (хранилка). Это позволяет менять схемы независимо для каждого сервиса, а также изолировать их на этапе выполнения.

Есть мнение, что микросервисы — часть SOA (Service-Oriented Architecture). На самом деле есть различия.

Автор предлагает для лучшего понимания работы с микросервисами язык шаблонов микросервисной архитектуры

Микросервисная архитектура также требует правильной организации развертывания и доставки — DevOps.


Последнее обновление : 18 мая 2023 г.
Дата создания : 23 июля 2022 г.

Комментарии

Комментарии