TGStat
TGStat
Type to search
Advanced channel search
  • flag English
    Site language
    flag Russian flag English flag Uzbek
  • Sign In
  • Catalog
    Channels and groups catalog Regional compilations Thematic compilations Платные каналы Search for channels
    Add a channel/group
  • Ratings
    Rating of channels Rating of groups Posts rating
    Ratings of brands and people
  • Analytics
  • Search by posts
  • Telegram monitoring
  • Promotion
    Advertising through Yandex Business Advertising in channels through TGStat Agency Advertising on TGStat.ru website
GetAnalyst - Навыки • Системный анализ • Бизнес-анализ

28 Feb 2025, 09:04

Open in Telegram Share Report

Архитектура МСА - C4 Context - BookingGA.png
261.8Kb
Архитектура МСА - C4 Container - BookingGA.png
1.3Mb
🔵 C4 / Container - пример для микросервисной архитектуры с брокером, БД и ФХ 🔵

Уровень C4 / Container показывает независимые по коду приложения системы.

И когда мы говорим про микросервисный подход к архитектуре (МСА), то этих контейнеров ооочень много.

Что мы видим на C4 / Container:
✔️ Пользователи
✔️ Внешние системы
✔️ Мобильные и веб-приложения [контейнеры]
✔️ Микросервисы [к]
✔️ API Gateway (маршрутизатор API-запросов) [к]
✔️ БД и ФХ [к]
✔️ API для взаимодействия сервисов
✔️ Брокер для асинхронного обмена [к]

Сравните схему с монолитом и увидите, как лаконично смотрится один контейнер монолитного Backend, и как перегружена схема микросервисов.

Поэтому, как лайфхак, можно показать все микросервисы, брокеров, БД и ФХ на уровне C4/Component (который нужен для модулей кода), но это будет противоречить нотации. Хотя станет удобнее читать и понимать схемы.

На практике команды часто адаптируют C4 под себя. Я рекомендую придерживаться нотации, здравого смысла и принципа понятности.

-----------

❗️ Чтобы это был не просто еще один сохраненный пост, выполните небольшие упражнения:

1. Как будет реализован алгоритм создания нового бронирования?

В результате бронирования надо занять даты в календаре и отправить уведомления владельцу + арендатору о создании нового бронирования на email.

Пройдите алгоритм по цепочке:
➡️ Пользователь нажимает кнопку бронирования ⬇️
➡️ Frontend отправляет API-запрос ⬇️
➡️ API Gateway принимает запрос и направляет на Сервис Бронирований
➡️ Сервис Бронирований...

Обратите внимание на чтение и запись событий из брокера.

2. Напишите список сервисов, которые пишут сообщения в брокер Kafka, и которые читают сообщения из него.


-----------

Ответы разберу на следующей неделе, когда познакомлю вас с брокерами поближе 🙂


Материалы, которые помогут в понимании прикрепленных схем:
🔗 C4 - знакомство с нотацией моделирования
🔗 C4/Context - как строить для проекта BookingGA
🔗 C4/Container для монолита
🔗 Ключевые элементы МСА
🔗 Выделение микросервисов BookingGA

#АрхитектураGA

4.3k 1 109 3 18
Catalog
Channels and groups catalog Channels compilations Search for channels Add a channel/group
Ratings
Rating of Telegram channels Rating of Telegram groups Posts rating Ratings of brands and people
API
API statistics Search API of posts API Callback
Our channels
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Read
Академия TGStat Telegram Research 2019 Telegram Research 2021 Telegram Research 2023
Contacts
Справочный центр Support Email Jobs
Miscellaneous
Terms and conditions Privacy policy Public offer
Our bots
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot