Термин · Глоссарий B2B-ПО

Микросервисная архитектура

Микросервисная архитектура – подход к построению приложений как набора небольших независимых сервисов, каждый из которых отвечает за одну бизнес-функцию, развёртывается и масштабируется автономно, взаимодействует через API или очереди сообщений. Противопоставляется монолитной архитектуре.

Буква «М» В категориях: 4 Платформ: 4+

Введение

Микросервисная архитектура – архитектурный стиль, при котором приложение строится как набор небольших, независимо развёртываемых сервисов, каждый из которых реализует чётко ограниченную бизнес-функцию («ограниченный контекст»). Сервисы взаимодействуют через легковесные механизмы – как правило, HTTP/REST API или асинхронные очереди сообщений – и могут разрабатываться, тестироваться и развёртываться независимо друг от друга.

Микросервисы появились как ответ на проблемы роста монолитных приложений: тяжёлые монолиты сложно масштабировать, медленно развёртывать и трудно поддерживать при росте команды. Netflix, Amazon, Uber стали первопроходцами в промышленном применении микросервисов в 2010-е годы.

История и контекст

Термин «микросервисы» был популяризирован Мартином Фаулером и Джеймсом Льюисом в их знаменитой статье 2014 года. Фактически архитектурные паттерны, описанные в статье, использовались Netflix с 2009 года при переходе на облако AWS, а Amazon – с начала 2000-х через «two-pizza rule» Безоса.

В России микросервисы активно внедряют с 2015–2018 годов. Сбербанк, Тинькофф, Яндекс, крупные телеком-операторы перешли с монолитов на микросервисные платформы для ускорения разработки. Параллельно выросла экосистема: Docker (2013), Kubernetes (2014–2015), service mesh (Istio, Linkerd), CI/CD-инструменты.

Как это работает

Ключевые принципы микросервисной архитектуры:

  • Единственная ответственность – каждый сервис делает одну вещь хорошо (Single Responsibility Principle).
  • Независимое развёртывание – сервисы деплоятся независимо через CI/CD пайплайны.
  • Децентрализованное управление данными – каждый сервис владеет своей БД (database per service).
  • Умные конечные точки, тупые каналы – логика в сервисах, передача данных через простые протоколы.
  • Проектирование для отказов – каждый сервис должен обрабатывать недоступность зависимостей (circuit breaker, retry, fallback).

Типовой стек: контейнеры Docker, оркестрация Kubernetes, API Gateway (Kong, nginx), service mesh (Istio), мониторинг (Prometheus/Grafana), трассировка (Jaeger), брокер сообщений (Kafka, RabbitMQ).

Где применяется

  • Банки и финтех – независимая разработка продуктов: кредиты, вклады, платежи – каждый как отдельный сервис.
  • E-commerce – каталог, корзина, оплата, доставка – независимые сервисы с разными требованиями к нагрузке.
  • Телеком – разделение BSS (биллинг, CRM) и OSS (управление сетью) на микросервисы.
  • Цифровые платформы – агрегаторы, маркетплейсы с высокими требованиями к масштабируемости.

Преимущества и ограничения

Преимущества: независимое масштабирование компонентов, ускорение разработки через параллельные команды, технологическая гибкость (разные языки и БД для разных сервисов), изоляция отказов, упрощение CI/CD.

Ограничения: значительное усложнение инфраструктуры и операций (distributed systems problem). Латентность сетевых вызовов между сервисами. Сложность распределённых транзакций. Overhead на коммуникацию и сериализацию. Требует зрелого DevOps.

Связь с другими понятиями

Событийная архитектура часто используется совместно с микросервисами для асинхронного взаимодействия. ESB и iPaaS – альтернативный/дополняющий подход к интеграции. Интеграционная шина в микросервисах заменяется на API Gateway и брокеры событий. Контейнеры (Docker, Kubernetes) – стандартная среда выполнения микросервисов.

Понятия из глоссария Цифрового маркетплейса, которые часто встречаются вместе с термином «Микросервисная архитектура».

Платформы класса «Микросервисная архитектура»

Решения из каталога Цифрового маркетплейса, относящиеся к этому классу ПО. Карточки ведут на полные карточки платформ с тарифами, обзорами и кейсами внедрения.

MasterOPC

MasterOPC

Производство и логистика
MasterOPC — российская коммуникационная платформа для промышленной автоматизации, реализующая протоколы OPC UA...
Цена по запросу
★ 4.8
Подробнее →

Категории каталога

Разделы каталога Цифрового маркетплейса, в которые входят решения, использующие «Микросервисная архитектура».

Где применяется

Отрасли, в которых «Микросервисная архитектура» используется на практике. Откройте отраслевой раздел Цифрового маркетплейса, чтобы увидеть подходящие решения, кейсы и новости.

Частые вопросы про Микросервисная архитектура

Что такое микросервисная архитектура?

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

В чём разница между микросервисами и монолитом?

Монолит – единое приложение, деплоящееся целиком. Микросервисы – набор независимых сервисов, каждый со своей базой данных и циклом разработки.

Когда стоит переходить на микросервисы?

Когда монолит мешает масштабированию команды, деплоям или горизонтальному масштабированию нагрузки. Для малых проектов монолит предпочтительнее.

Что такое паттерн «circuit breaker»?

Механизм защиты от каскадных отказов: если сервис не отвечает, circuit breaker 'размыкает' цепь и возвращает fallback-ответ вместо бесконечного ожидания.

Какие инструменты нужны для микросервисов?

Docker и Kubernetes для оркестрации, API Gateway для маршрутизации, Kafka/RabbitMQ для событий, Prometheus/Grafana для мониторинга, Jaeger для трассировки.

Дороже ли микросервисы монолита?

На старте дороже из-за инфраструктурного overhead. При масштабировании команды и нагрузки окупаются за счёт независимого деплоя и точечного масштабирования.