Архитектура для аналитика — Ольга Пономарева (2025)

100

Категории: ,

Архитектура для аналитика

Автор курса: Ольга Пономарева

Сайт автора: systemanalyst_life/architecture

Цена автора: 44900 руб.

 

Углубленные знания проектирования архитектуры с точки зрения аналитика простым языком.
Теория в виде уроков — это видеозапись от 10 мин до 30 мин, в ней все самое важное и без воды. Помимо видеозаписи всегда есть презентация и доп.материалы (статьи, шаблоны документации).
Результат курса: после прохождения курса у вас получится итоговая архитектура и документация к ней с точки зрения аналитика.

Программа:

1. Сбор требований к архитектуре

Урок 1. Сбор требований к системе

  • Зачем собирать требования перед построением архитектуры?
  • Функциональные требования.
  • Нефункциональные требования.
  • Разбор примеров функциональных и нефункциональных требований.

Урок 2. Монолитная и микросервисная архитектура

  • Определение монолита и микросервисов
  • Плюсы и минусы
  • Выбор архитектуры

Урок-Бонус. Оценка нагрузки на систему

  • Пользовательский трафик
  • Сетевой трафик и соединения
  • Хранилища

2. Декомпозиция на микросервисы

Урок 3. Паттерны декомпозиции на микросервисы

  • Декомпозиция по бизнес-возможностям
  • Декомпозиция по Domain-driven design
  • Декомпозиция по UX/UI

Урок 4. Разбор DDD (Domain Driven Design)

  • Определения в DDD.
  • Разбор примеров разбиения на домены и поддомены.

3. Выбор БД
Урок 5. Виды баз данных

  • Реляционные
  • Ключ-значение
  • Колоночные
  • Документные
  • Графовые

Урок 6. Выбор БД

  • Алгоритм, как выбирать БД
  • Выбираем БД: Google диска
  • Выбираем БД: Twitter
  • Выбираем БД: WhatsApp
  • Выбираем БД: Youtube

Урок 7. Связь БД и теоремы CAP

  • CAP-теорема (теорема Брюера)
  • CA-система (Consistency + Availability — Partition)
  • CP-система (Consistency + Partition — Availability)
  • AP-система (Availability + Partition — Consistency)

4. Высокоуровневый дизайн

Урок 8. Высокоуровневый дизайн

  • Разбор высокоуровневого дизайна для соц.сети (Instagram)
  • Разбор высокоуровневого дизайна для интернет-магазина (Яндекс.Маркет)

5. Межсервисное взаимодействие

Урок 9. Межсервисное взаимодействие: синхронное и асинхронное

  • Синхронное взаимодеиствие
  • Асинхронное взаимодеиствие

Урок 10. Синхронное взаимодействие: REST API

  • Как спроектировать REST API аналитику?
  • Когда использовать/не использовать REST с точки
    зрения реализации/архитектуры?
  • Как связано с архитектурой?

6. Брокер сообщений

Урок 11. Брокер сообщений

  • Что такое брокер сообщений?Устройство брокера сообщений
  • Для чего используют брокер?
  • Пример использования брокера в доставке
  • Пример использования брокера в Booking
  • Пример использования брокера в Mailchimp
  • Кейсы, когда брокер не нужен
  • Плюсы и минусы брокера

Урок 12. Kafka vs RabbitMQ

  • Push и Pull based подход
  • Устройство RabbitMQ
  • Устройство Kafka
  • Сравнение RabbitMQ vs Kafka
  • Применение RabbitMQ vs Kafka
  • Пример использования RabbitMQ в Runtastic
  • Пример использования Kafka в Walmart

7. Масштабирование и отзывчивость

Урок 13. REST API и API gateway, RPC и gRPC, WebSocket

  • API и REST API
  • Суть API Gateway
  • Недостатки API Gateway
  • RPC и gRPC
  • Как устроен gRPC
  • Разница gRPC и REST
  • WS или WebSocket
  • Применение WebSocket

Урок 14. Балансировщик, Webhook

  • Балансировщик
  • Распределение данных
  • Кэш
  • Webhook

Урок 15. Простые запросы (AJAX), Длинные запросы (long-polling), Server-Sent Events (SSE)

  • Балансировщик
  • Распределение данных
  • Кэш
  • Webhook

Урок 16. Репликация, Партиционирование, Шардирование, Индексирование БД

  • Простые запросы (AJAX)
  • Распределение данных
  • Кэш
  • Webhook

Урок 17. Шаблоны Повествование (сага), Хореография, Оркестрация

  • Повествование (сага)
  • Хореография
  • Оркестрация

8. Итоговые артефакты к архитектуре

Урок 18. Артефакты документации по архитектуре
Артефакты и шаблоны для описания архитектуры

Вы научитесь:

— формировать требования к архитектуре
— выбирать тип БД в зависимости от требований
— разбивать монолит на микросервисы с помощью DDD
— разбираться, когда нужны брокеры сообщений и как их описывать
— понимать, как можно масштабировать систему
— отличать, когда нужен Websocket или Webhook
— понимать, зачем нужен балансирощик или кэш
— рисовать архитектуру
— описывать микросервис в документации

Ольга Пономарева. Старший системный аналитик в райффайзенбанке

Тариф Только послушать.