Когда вы проектируете систему, обязательно показывайте:
🔁 Как взаимодействуют Frontend и Backend
⚙️ Как взаимодействуют компоненты внутри Backend, особенно это касается сервисной SOA и микросервисной MSA архитектуры
🌐 Как ваш Backend интегрируется с внешними системами
Ниже — чеклист видов интеграций, которые стоит учитывать в архитектуре:
✅ Синхронные интеграции по API
REST API
SOAP API
GraphQL
gRPC
HTTP API
✅ Асинхронные интеграции: механизмы на основе синхронных API
Polling
Long Polling
Webhooks
✅ Асинхронные интеграции через очереди и брокеры сообщений (MQ)
Kafka
RabbitMQ
Amazon SQS
и другие решения.
✅ Интеграции в режиме реального времени
WebSocket
Server-Sent Events (SSE)
GraphQL (subscription)
gRPC (streaming)
✅ SDK
🛑 Устаревающие подходы
Общая БД
Интеграции через файлы
Подробное описание в картинках к посту.
Обязательно показывайте эти связи между компонентами системы на уровне C4 / Container.
#АрхитектураGA
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24❤12😁1
Пытаетесь самостоятельно разобраться в архитектуре систем и расти в карьере, но не хватает практики и понятных примеров? Давайте сделаем это вместе — пошагово и на реальном кейсе!
Мы готовим открытый практикум для системных аналитиков, чтобы вы на практике поняли, как проектируется архитектура:
Занятие в записи. Вы сможете посмотреть его в удобное для вас время.
План:
✅ Плюсы и минусы монолита — на реальном проекте.
✅ Что такое SOA и MSA, чем отличаются и когда используются.
✅ Как делить монолит на микросервисы.
✅ Проработаете миграцию модуля в микросервис: БД, ER-диаграмма, вынос данных.
✅ Осознаете, почему делают модульный монолит перед переходом к микросервисам.
✅ Узнаете, как аналитик может расти в сторону архитектуры и какие навыки нужны для этого.
Вы получите знания и инструменты, которые сразу можно применить в работе.
Успейте зарегистрироваться — доступ будет открыт только с 31 мая по 2 июня! 🙌
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍6🔥3
GetAnalyst_Архитектура_GreenChargeGA_C4_Container.png
1.2 MB
🔵 C4 / Container - пример микросервисной архитектуры #GreenChargeGA 🔵
Уровень C4 / Container показывает независимые по коду приложения в системе — так называемые контейнеры [к].
Что включает схема на этом уровне:
✔️ Пользователи
✔️ Внешние системы
✔️ Мобильные, веб- и десктоп приложения [к]
✔️ Микросервисы [к]
✔️ API Gateway (маршрутизатор API-запросов) [к]
✔️ БД и ФХ [к]
✔️ API для взаимодействия сервисов
✔️ Брокеры для асинхронного обмена [к]
В микросервисной архитектуре этих контейнеров может быть очень много, и без хорошей визуализации легко потеряться 🤪
📌 Ранее я показывала архитектуру GreenChargeGA в виде "квадратиков и стрелочек", теперь, в прикреплённой к посту схеме, используется нотация C4 > уровень Container.
Что добавила C4:
✅ Чёткие указания на используемые API и протоколы
✅ Указание языков программирования и фреймворков всех приложений
✅ Технологии БД и файловых хранилищ
Теперь на диаграмме есть вся необходимая информация, чтобы понять архитектуру проекта без чтения документации.
Недостатки показанной архитектуры, которые будем дорабатывать:
❌ Нет связи от Firebase к фронтам, куда доставляются уведомления
❌ Синхронизация всего через один API Gateway? Плохо масштабируемая и уязвимая идея
❌ Всё синхронно внутри? Не надёжно 🥲 Надо ещё брокеров
❌ Не показаны WebHooks от платежных систем
Подумайте уже сейчас, как исправить эти недостатки на схеме 😉
💡 Лайфхак
Для простоты восприятия можно объединить все микросервисы и инфраструктуру в один контейнер «Backend», а детали вынести на уровень C4/Component.
Но это будет противоречить нотации.
💡 На практике
Команды часто адаптируют C4 под свои нужды. Я же рекомендую придерживаться здравого смысла, прозрачности и принципа "понятно с первого взгляда".
📚 Связанные материалы:
Нотация C4 и документация по ней
C4 / Context для проекта GreenChargeGA (предыдущий уровень)
Изучайте и сохраняйте! 💙
Это мощный и наглядный пример, к которому точно захочется вернуться, когда будете продумывать или описывать архитектуру в своих проектах.
#АрхитектураGA
Уровень C4 / Container показывает независимые по коду приложения в системе — так называемые контейнеры [к].
Что включает схема на этом уровне:
✔️ Пользователи
✔️ Внешние системы
✔️ Мобильные, веб- и десктоп приложения [к]
✔️ Микросервисы [к]
✔️ API Gateway (маршрутизатор API-запросов) [к]
✔️ БД и ФХ [к]
✔️ API для взаимодействия сервисов
✔️ Брокеры для асинхронного обмена [к]
В микросервисной архитектуре этих контейнеров может быть очень много, и без хорошей визуализации легко потеряться 🤪
📌 Ранее я показывала архитектуру GreenChargeGA в виде "квадратиков и стрелочек", теперь, в прикреплённой к посту схеме, используется нотация C4 > уровень Container.
Что добавила C4:
✅ Чёткие указания на используемые API и протоколы
✅ Указание языков программирования и фреймворков всех приложений
✅ Технологии БД и файловых хранилищ
Теперь на диаграмме есть вся необходимая информация, чтобы понять архитектуру проекта без чтения документации.
Недостатки показанной архитектуры, которые будем дорабатывать:
❌ Нет связи от Firebase к фронтам, куда доставляются уведомления
❌ Синхронизация всего через один API Gateway? Плохо масштабируемая и уязвимая идея
❌ Всё синхронно внутри? Не надёжно 🥲 Надо ещё брокеров
❌ Не показаны WebHooks от платежных систем
Подумайте уже сейчас, как исправить эти недостатки на схеме 😉
Для простоты восприятия можно объединить все микросервисы и инфраструктуру в один контейнер «Backend», а детали вынести на уровень C4/Component.
Но это будет противоречить нотации.
Команды часто адаптируют C4 под свои нужды. Я же рекомендую придерживаться здравого смысла, прозрачности и принципа "понятно с первого взгляда".
📚 Связанные материалы:
Нотация C4 и документация по ней
C4 / Context для проекта GreenChargeGA (предыдущий уровень)
Изучайте и сохраняйте! 💙
Это мощный и наглядный пример, к которому точно захочется вернуться, когда будете продумывать или описывать архитектуру в своих проектах.
#АрхитектураGA
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥26❤7
📚 Очередь VS Брокер: подборка вопросов с собеседований 📚
Очередь сообщений — это структура данных,
которая хранит сообщения до тех пор, пока их не заберёт получатель.
Брокер сообщений — это программное обеспечение,
которое управляет обменом сообщений между приложениями. Он может включать в себя множество очередей сообщений и дополнительно поддерживать топики, маршрутизацию, обработку и механизмы гарантии доставки.
Вопросы с подвохом, которые вы можете встретить на собеседованиях на Middle+ Системного Аналитика:
👉 1. Если у нас есть очередь сообщений, зачем нужен брокер?
👉 2. Может ли очередь работать без брокера?
👉 3. Могу ли я использовать брокер без очередей сообщений?
👉 4. Если я использую очередь сообщений, могу ли я гарантировать доставку сообщения?
👉 5. Очередь всегда работает по принципу FIFO (первое пришло - первое вышло из очереди)?
👉 6. Может ли очередь работать с несколькими производителями и потребителями?
Подробная статья:
🔗 Брокер и очередь сообщений: что это и в чем отличия?
#АрхитектураGA
Очередь сообщений — это структура данных,
которая хранит сообщения до тех пор, пока их не заберёт получатель.
Брокер сообщений — это программное обеспечение,
которое управляет обменом сообщений между приложениями. Он может включать в себя множество очередей сообщений и дополнительно поддерживать топики, маршрутизацию, обработку и механизмы гарантии доставки.
Вопросы с подвохом, которые вы можете встретить на собеседованиях на Middle+ Системного Аналитика:
👉 1. Если у нас есть очередь сообщений, зачем нужен брокер?
👉 2. Может ли очередь работать без брокера?
👉 3. Могу ли я использовать брокер без очередей сообщений?
👉 4. Если я использую очередь сообщений, могу ли я гарантировать доставку сообщения?
👉 5. Очередь всегда работает по принципу FIFO (первое пришло - первое вышло из очереди)?
👉 6. Может ли очередь работать с несколькими производителями и потребителями?
Прежде чем открывать картинки с ответами, попробуйте ответить сами! 😉
Подробная статья:
#АрхитектураGA
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤35👍17🔥12😁2
Брокеры — это посредники в передаче сообщений между системами или сервисами.
Они позволяют асинхронно обмениваться данными и обеспечивают гарантию доставки сообщений.
👉 Принцип работы:
1. Сервис 1 (Producer/ Производитель) хочет отправить данные в Сервис 2 (Consumer/ Потребитель).
2. Сервис 2 в это время может быть перегружен или занят.
3. Чтобы Сервис 1 не ждал, пока Сервис 2 станет доступен, он кладет сообщение в Брокер и продолжает свою работу.
4. Брокер сохраняет сообщение и ставит его в очередь к обработке.
5. Как только Сервис 2 становится доступен, то он забирает сообщение из Брокера и обрабатывает его.
По сути брокеры - это временные Базы Данных,
которые гарантируют, что сообщения (данные) в них будут храниться, пока их не заберут и не обработают соответствующие системы или сервисы.
👉 Брокеры могут использоваться:
+ в сервисной и микросервисной архитектуре,
+ в событийно-ориентированной архитектуре (EDA),
+ когда нужна фоновая обработка событий в монолите,
+ для асинхронных интеграций.
👉 Брокеры сообщений предлагают два основных шаблона обмена данными:
1. Точка-точка (Point-to-Point Messaging)
Это паттерн, используемый в очередях сообщений, где существует один отправитель и один получатель. Каждое сообщение в очереди отправляется только одному получателю и может быть обработано только один раз.
2. Публикация-подписка (Publish/Subscribe Messaging)
В этом паттерне отправитель (producer) публикует сообщения в определённую тему (topic), а подписчики (consumers) подписываются на темы, чтобы получать сообщения.
Все сообщения, опубликованные в теме, доставляются всем приложениям, подписанным на неё.
Применяется в случаях, где несколько систем должны получить одну и ту же информацию.
Возможности и логика работы брокеров отличаются в зависимости от конкретного решения.
Основные решения по брокерам на рынке:
✅ Apache Kafka
✅ RabbitMQ
✅ ActiveMQ
✅ Amazon MQ, Amazon SQS
✅ Яндекс Message Queue (YMQ) - аналог Amazon
✅ и другие.
#АрхитектураGA
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21❤10🔥8😁1
Хотите развиваться в теме проектирования архитектуры и работать в IT-продуктах с брокерами и микросервисами? Тогда вам сюда!
👉 Узнать подробнее и зарегистрироваться
🎥 Урок в записи — смотрите в удобное время.
Что разберём:
1. Монолит: плюсы и минусы
2. SOA vs MSA: в чём разница и когда что выбрать
3. Пошаговый план деления монолита на микросервисы
4. Разбор кейса по вынесению модуля из монолита в деталях: архитектура, вынесение данных в отдельную БД, особенности
5. Почему молодым продуктам лучше делать модульный монолит
6. Как аналитику расти в сторону архитектура и что для этого нужно
Практика, реальные кейсы и ответы на вопросы.
Регистрируйтесь, получайте опыт и переходите на новый уровень в системном анализе! 🙌
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14👍9🔥7😁1
Forwarded from 👩🏻💻 Подкаст Системных Аналитиков | GetAnalyst
🤔 Всё про Agile, Scrum, Kanban и «Документация не нужна» 🤔
В этом выпуске разбираемся, что такое Agile на самом деле, и как системные аналитики работают в таких командах.
Если вы начинающий системный аналитик или только делаете первые шаги в IT, этот эпизод поможет разобраться, что такое Agile (Scrum, Kanban).
👉 А если вас раздражает фраза “документация не нужна”, вы не понимаете, зачем столько созвонов и почему это всё в Agile — этот выпуск также для вас.
🔗 Сайт эпизода
Слушайте эпизод и расширяйте свою профессиональную экспертизу!
Эпизод доступен в:
⏯ Apple Podcast
⏯ Яндекс.Музыка
⏯ Telegram
⏯ Castbox
⏯ Звук
⏯ Spotify
⏯ RuTube
⏯ YouTube
⏯ VK Video
Участие в сообществе Системных Аналитиков GetAnalyst — это шаг к новому опыту и развитию в карьере каждый день!💫
В этом выпуске разбираемся, что такое Agile на самом деле, и как системные аналитики работают в таких командах.
Если вы начинающий системный аналитик или только делаете первые шаги в IT, этот эпизод поможет разобраться, что такое Agile (Scrum, Kanban).
👉 А если вас раздражает фраза “документация не нужна”, вы не понимаете, зачем столько созвонов и почему это всё в Agile — этот выпуск также для вас.
Слушайте эпизод и расширяйте свою профессиональную экспертизу!
Эпизод доступен в:
⏯ Apple Podcast
⏯ Яндекс.Музыка
⏯ Telegram
⏯ Castbox
⏯ Звук
⏯ Spotify
⏯ RuTube
⏯ YouTube
⏯ VK Video
Участие в сообществе Системных Аналитиков GetAnalyst — это шаг к новому опыту и развитию в карьере каждый день!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤16👍6🤩3
This media is not supported in your browser
VIEW IN TELEGRAM
Есть такая фраза: "не усложняй".
Это работает и в разработке систем.
Лучшие решения - простые 🙌
И иногда джуны находят эти решения случайно, и лучше, чем опытные специалисты 😀
P.S. Не знаю кто в Hendai сделал эту прекрасную рекламу с котами, но она проста и прекрасна (Оригинал в запретграме)🐈⬛
P.S.S. Доступ к бесплатному обучению по Архитектуре открыт 📚
Это работает и в разработке систем.
Лучшие решения - простые 🙌
И иногда джуны находят эти решения случайно, и лучше, чем опытные специалисты 😀
P.S. Не знаю кто в Hendai сделал эту прекрасную рекламу с котами, но она проста и прекрасна (Оригинал в запретграме)
P.S.S. Доступ к бесплатному обучению по Архитектуре открыт 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
❤20🔥9😁9🤩1
Я способна отложить абсолютно всё: от похода к врачу до обучения в Гарварде 🙌
Вроде хочешь перемен, а вместо действий — бесконечное «сделаю завтра».
Поход к врачу откладывается до следующего месяца, пробежка вдоль океана — до «когда будет настроение», мечты о новом образовании — на неопределённое «потом»🙌
А внутри — растущее разочарование и усталость от самой себя.
Так может продолжаться долго.
Мой актуальный рекорд прокрастинации: почти год откладывала обучение и сертификацию Гарварде 🎓
Казалось, ну куда мне — нет времени, а если я тупить буду на английском, бизнес пока маленький… синдром самозванца forever💗
Но в итоге просто взяла и отправила заявку, пока в очередной раз изучала сайт и раздумывала.
И всё: я в деле, назад дороги нет 🤪🥲
Цель есть. Энергия появилась.
Сейчас готовлюсь, планирую как команды меня подстрахуют, чтобы я могла держать фокус на учёбе.
Получится? Не знаю.
Но я уже в деле и надо будет сдать кучу домашек с жесткими дедлайнами.
У меня появился чёткий план.
И поддерживающее сообщество студентов, кто будет со мной проходить этот путь.
Я уже убедилась: стоит сделать первый шаг — и появляется ощущение лёгкости и силы.
Едва сдвинешься с места — и мир как-будто сам начинает тебе помогать реализовать план 🪄
Так что если ты тоже постоянно откладываешь что-то важное, попробуй сделать маленький шаг уже сегодня.
Просто один шаг навстречу цели.
Ты удивишься, сколько энергии и перемен он может дать 🦄
Вроде хочешь перемен, а вместо действий — бесконечное «сделаю завтра».
Поход к врачу откладывается до следующего месяца, пробежка вдоль океана — до «когда будет настроение», мечты о новом образовании — на неопределённое «потом»
А внутри — растущее разочарование и усталость от самой себя.
Так может продолжаться долго.
Мой актуальный рекорд прокрастинации: почти год откладывала обучение и сертификацию Гарварде 🎓
Казалось, ну куда мне — нет времени, а если я тупить буду на английском, бизнес пока маленький… синдром самозванца forever
Но в итоге просто взяла и отправила заявку, пока в очередной раз изучала сайт и раздумывала.
И всё: я в деле, назад дороги нет 🤪🥲
Цель есть. Энергия появилась.
Сейчас готовлюсь, планирую как команды меня подстрахуют, чтобы я могла держать фокус на учёбе.
Получится? Не знаю.
Но я уже в деле и надо будет сдать кучу домашек с жесткими дедлайнами.
У меня появился чёткий план.
И поддерживающее сообщество студентов, кто будет со мной проходить этот путь.
Я уже убедилась: стоит сделать первый шаг — и появляется ощущение лёгкости и силы.
Едва сдвинешься с места — и мир как-будто сам начинает тебе помогать реализовать план 🪄
Так что если ты тоже постоянно откладываешь что-то важное, попробуй сделать маленький шаг уже сегодня.
Просто один шаг навстречу цели.
Ты удивишься, сколько энергии и перемен он может дать 🦄
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥83❤28👏14❤🔥9👎2
GetAnalyst - Kafka - 8 шагов для понимания.png
522.6 KB
1️⃣ Что такое Kafka?
2️⃣ Сообщения в Kafka
3️⃣ Topics & Partitions
4️⃣ Kafka Producer
5️⃣ Kafka Consumer
6️⃣ Kafka Cluster
7️⃣ Сценарии использования Kafka
Подробнее про Kafka в подкасте GetAnalyst
Сохраняйте картинку в личный архив.
Это идеальный чек-лист для подготовки к собеседованиям ✅
#АрхитектураGA
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤12😍11🔥5🥰2👏1