ARC07-1 Архитектура ПО
Продолжительность курса: 88 ак. ч.

Описание курса:
В процессе обучения мы рассмотрим множество нетривиальных проблем проектирования backend-приложений и их дальнейшего сопровождения. Изучим не только паттерны проектирования новых сервисов, но и освоим подходы к работе с legacy-сервисами. Научимся решать проблемы с согласованностью изменений (например, порядок применения транзакций) или с оркестрацией сервисов, что будет полезно тем, кто работает в сфере распределенных / децентрализованных систем.
Как разработчик, научитесь базовым навыкам работы с Kubernetes.

Аудитория:
• Архитекторы;
• Системные аналитики;
• Разработчики;
• Администраторы и DevOps.

Необходимая подготовка:
Знание и опыт работы в одном из следующих стеков: Java (spring / Java EE); Node.js; C# (.net); Python (django); Golang; PHP.

Программа курса:
Модуль 1. Базовые паттерны микросервисных архитектур
• Плюсы и минусы микросервисной архитектуры
• От монолита к микросервису
• Паттерны декомпозиции микросервисов
• Тестирование микросервисов (часть 1)
• Тестирование микросервисов (часть 2)
• Авторизация и аутентификация в микросервисной архитектуре

Модуль 2. Инфраструктура микросервисов
• Инфраструктурные паттерны: CI/CD, дистрибуция артефактов, конфигурирование приложений
• Инфраструктурные паттерны: паттерны развертывания, service discovery, health-checks
• Основы работы с Docker
• Архитектура Kubernetes
• Базовые сущности Кubernetes: ReplicaSet, Deployment, Service, Ingress
• Базовые сущности Kubernetes: Persistent Volume, Persistent Volume Claim, StatefulSet, ConfigMap, Secret
• Базовые сущности Кubernetes: Job, CronJob, DaemonSet
• Работа с Helm-ом
• Kubernetes Q&A

Модуль 3. Инструменты наблюдаемости
• Мониторинг и алертинг
• Prometheus. Grafana
• Системы логирования (ELK, EFK, Graylog2)

Модуль 4. Коммуникационные паттерны
• Backend for frontends. Apigateway
• Асинхронный и синхронный API
• Event Driven Architecture
• Распределенные очереди сообщений на примере Kafka
• GraphQL. gRPC
• RESTful
• Service mesh на примере Istio
• Практика системного проектирования

Модуль 5. Распределенные системы и хранилища
• Введение в распределенные системы
• Распределенные транзакции
• Паттерны кэширования и основные принципы
• Шардирование
• CP cистемы
• AP системы
• Паттерны поддержания консистентности данных (Stream processing)
• Идемпотентость и коммутативность API в HTTP и очередях

Модуль 6. Проектная работа

Окончательная цена указывается в договоре на обучение. Записаться на курс

Характеристики курса

  • Академ. часов: 88
  • Количество мест: 8
  • Направление: Курсы для ИТ-специалистов
  • Город: Москва, Пермь
  • Очно: 206900 ₽
  • Вебинар: 206900 ₽

Расписание

Ведётся набор
Записаться на курс