• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Бакалавриат 2025/2026

Сервис-ориентированные архитектуры

Когда читается: 3-й курс, 3, 4 модуль
Онлайн-часы: 20
Охват аудитории: для своего кампуса
Преподаватели: Син Денис Дмитриевич
Язык: английский
Кредиты: 4
Контактные часы: 80

Course Syllabus

Abstract

В рамках этого курса вы познакомитесь с ключевыми подходами к организации веб-сервисов, а также ключевыми подходами к формированию API. Также, мы рассмотрим, как развитие сервис-ориентированных систем на базе облачных решений привело к появлению микросервисного подхода. Рассмотрим паттерны проектирования сервисов, подходы к отказоустойчивости и масштабируемовсти.
Learning Objectives

Learning Objectives

  • Знать понятие сервис-ориентированной архитектуры (СОА) и базовые свойства распределённых систем.
  • Знать отличия монолитной и микросервисной архитектуры и уметь выбирать подход под задачу.
  • Знать технологии интеграций: REST, gRPC; уметь разрабатывать сервисы на их основе.
  • Знать особенности использования реляционных БД в распределённых системах и подходы к проектированию данных.
  • Знать типы NoSQL, основы OLAP и DWH, понимать, где применять различные хранилища.
  • Знать стратегии кэширования (TTL, LRU, write-through и др.) и уметь применять их на практике.
  • Знать ключевые концепции DDD (Bounded Context, Aggregate, Events) и уметь использовать их для декомпозиции.
  • Уметь анализировать бизнес-требования и принимать архитектурные решения на их основе.
  • Знать особенности асинхронных интеграций и брокеров сообщений; уметь строить взаимодействие через очереди.
  • Знать паттерны асинхронных взаимодействий: Saga, Outbox, Event Sourcing, CQRS.
  • Знать механизмы отказоустойчивости (retry, circuit breaker, fallback, bulkhead) и уметь их применять.
  • Знать подходы Observability: метрики, логи, трассировки, и уметь проектировать наблюдаемость сервисов.
  • Знать основы CI/CD и принципы сборки и деплоя микросервисов.
  • Знать методы безопасности СОА: OAuth2, JWT, mTLS, и подходы к тестированию микросервисов.
  • Знать ключевые паттерны микросервисной архитектуры: API Gateway, Service Mesh, Message Queue; уметь выбирать подходящие решения под требования.
Expected Learning Outcomes

Expected Learning Outcomes

  • Знание ключевых паттернов организации микросервисной архитектуры: API Gateway, Service Mesh, Message Queue, Event Sourcing.
  • Умеет принимать решения об архитектуре системы в зависимости от требований.
  • Знает особенности организации связи на основе протоколов TCP и UDP.
  • Знает особенности обеспечения безопасности СОА: технологии OAuth, JSON Web Token.
Course Contents

Course Contents

  • Введение в SOA.
  • Монолиты vs Микросервисы
  • Интеграции и REST API + RPC/gRPC
  • Базы данных
  • NoSQL + OLAP + DWH
  • Кэширование
  • DDD и межсервисное взаимодействие
  • Требования + бизнес + работа в IT-команде
  • Интеграции: async, брокеры сообщений
  • Паттерны асинхронных интеграций
  • Отказоустойчивость
  • Observability
  • Build & Deploy
  • Безопасность + Тестирование микросервисов
  • Паттерны проектирования
Assessment Elements

Assessment Elements

  • non-blocking Домашнее задание
  • non-blocking Экзамен
Interim Assessment

Interim Assessment

  • 2025/2026 4th module
    0.7 * Домашнее задание + 0.3 * Экзамен
Bibliography

Bibliography

Recommended Core Bibliography

  • Современный подход к программной архитектуре: сложные компромиссы. - 978-5-4461-2024-6 - Форд Нил, Ричардс Марк, Садаладж Прамод, Дехгани Жамак - 2023 - Санкт-Петербург: Питер - https://ibooks.ru/bookshelf/391724 - 391724 - iBOOKS

Recommended Additional Bibliography

  • Создание микросервисов - 978-5-496-02011-4 - Ньюмен С. - 2016 - Санкт-Петербург: Питер - https://ibooks.ru/bookshelf/351337 - 351337 - iBOOKS

Authors

  • SOLDATOVA TATYANA VLADIMIROVNA