Как выглядит типичная микросервисная архитектура?
Балансировщик нагрузки: распределяет входящий трафик между несколькими серверными службами.
CDN (сеть доставки контента): CDN — это группа географически распределенных серверов, на которых хранится статический контент для более быстрой доставки. Клиенты сначала ищут контент в CDN, а затем переходят к серверным службам.
Шлюз API: обрабатывает входящие запросы и направляет их соответствующим службам. Он общается с поставщиком удостоверений и сервисом обнаружения.
Поставщик удостоверений: обрабатывает аутентификацию и авторизацию пользователей.
Реестр служб и обнаружение: регистрация и обнаружение микрослужб происходят в этом компоненте, а шлюз API ищет соответствующие службы в этом компоненте для взаимодействия.
Управление: этот компонент отвечает за мониторинг услуг.
Микросервисы. Микросервисы разрабатываются и развертываются в разных областях. Каждый домен имеет свою базу данных. Шлюз API взаимодействует с микросервисами через REST API или другие протоколы, а микросервисы в одном домене взаимодействуют друг с другом с помощью RPC (удаленный вызов процедур).
Преимущества микросервисов:
- Их можно быстро спроектировать, развернуть и масштабировать по горизонтали.
- - Каждый домен может независимо обслуживаться специальной командой.
- - Бизнес-требования могут быть настроены в каждом домене и, как результат, лучше поддерживаться.