Микросервисная архитектура для начинающих

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

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

Стандартная архитектура, когда работу выполняет одно большое приложение называется «монолит».

Преимущества микросервисной архитектуры

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

Недостатки микросервисной архитектуры

  • Сложность разработки и интеграционного тестирования возрастает многократно.
  • Сетевые задержки на общение между сервисами.
  • Сложность анализа внутреннего состояния и выявления проблем.

Основные компоненты микросервисной архитектуры

API Gateway

API Gateway — это единый прокси сервер между клиентами и сервисами. Он может кешировать запросы, проверять права доступа, осуществлять балансировку и т. д.

Service discovery

Service Discovery — это система, которая знает, где какой сервис находится. Она связана с Registry Service и с балансировщиком.

Registry service

Registry Service  — это тот компонент микросервисной архитектуры, в котором регистрируются все работающие сервисы, чтобы они могли найти друг друга.

Балансировщик

Балансировщик может быть на клиентской части вызывающего сервиса, либо он может быть отдельным сервисом. Балансировщик выбирает, какой экземпляр сервиса из Registry Service вызвать.

 

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *