Специальная цена
Рассрочка
Microservice Architecture
Научитесь работе с лучшими инструментами по разработке микросервисной архитектуры
25 декабря
Professional
4 месяца
Онлайн
Пн/Ср 20:00 Мск
Для кого этот курс?
- Разработчиков Backend и Fullstack. Микросервисная архитектура позволит вести более гибкую разработку и при необходимости быстро изменять требования к продукту
- Архитекторов ПО. Рассмотрите лучшие практики по разработке архитектуры программного обеспечения и сложных распределенных и отказоустойчивых систем
- Системных аналитиков. Сможете поменять профессию и стать архитектором, а также будете понимать паттерны и тонкости организации микросервисной архитектуры
Необходимые знания
- Java (spring / Java EE);
- Node.js; C# (.net);
- Python (django);
- Golang;
- PHP.
Что даст вам этот курс?
После обучения выпускники на профессиональном уровне смогут планировать архитектуру и создавать масштабируемые, fault-tolerant приложения, решая нетривиальные задачи в рамках распределенных и децентрализованных систем и используя в проектах классические паттерны проектирования (шардирование, репликация, и т.д.).
Особенности программы
В процессе обучения мы рассмотрим множество нетривиальных проблем проектирования backend-приложений и их дальнейшего сопровождения. Изучим не только паттерны проектирования новых сервисов, но и освоим подходы к работе с legacy-сервисами. Научимся решать проблемы с согласованностью изменений (например, порядок применения транзакций) или с оркестрацией сервисов, что будет полезно тем, кто работает в сфере распределенных / децентрализованных систем.
Как разработчик, научитесь базовым навыкам работы с Kubernetes.
Best Practice по разработке архитектуры программного обеспечения и сложных распределенных и отказоустойчивых систем. Сегодня профессиональные навыки разработки архитектуры программного обеспечения являются одной из главных компетенций специалистов по созданию масштабируемых и отказоустойчивых приложений.
Почему стоит освоить?
Сейчас многие компании развиваются и переходят на микросервисную архитектуру, которая имеет много преимуществ перед монолитами.
В рамках курса рассматриваем работу с очень популярными сейчас инструментами: Kubernetes и Docker.
Процесс обучения
Используйте знания курса на 100%
Cоздайте каркас приложения интернет-магазина: дополните портфтолио ценным проектом
Учитесь у экспертов
Перенимайте опыт успешных архитекторов и разработчиков
Упражняйтесь регулярно
Теория не существует в вакууме. Попробуйте «как это работает» в практических блоках учебных модулей
Партнеры
- Разместите свое резюме в базе OTUS: так наши партнёры смогут пригласить Вас на собеседование
- Посещайте карьерные мероприятия OTUS: Вам расскажут, как лучше приходить собеседование
Микросервисная архитектура
Работодатели курса
Программа
Базовые паттерны микросервисных архитектур
В этом модуле вы рассмотрите: - плюсы и минусы микросервисной архитектуры - авторизацию и аутентификацию в микросервисной архитектуре и т.д.
Тема 1: Плюсы и минусы микросервисной архитектуры
Тема 2: От монолита к микросервису
Тема 3: Паттерны декомпозиции микросервисов // ДЗ
Тема 4: Тестирование микросервисов (часть 1)
Тема 5: Тестирование микросервисов (часть 2)
Тема 6: Авторизация и аутентификация в микросервисной архитектуре
Инфраструктура микросервисов
В данном модуле будут рассмотрены основы работы с инфраструктурными паттернами, принципы работы с Docker и базовые сущности Kubernetes
Тема 1: Инфраструктурные паттерны: CI/CD, дистрибуция артефактов, конфигурирование приложений
Тема 2: Инфраструктурные паттерны: паттерны развертывания, service discovery, health-checks
Тема 3: Основы работы с Docker // ДЗ
Тема 4: Архитектура Kubernetes
Тема 5: Базовые сущности Кubernetes: ReplicaSet, Deployment, Service, Ingress // ДЗ
Тема 6: Базовые сущности Kubernetes: Persistent Volume, Persistent Volume Claim, StatefulSet, ConfigMap, Secret
Тема 7: Базовые сущности Кubernetes: Job, CronJob, DaemonSet
Тема 8: Работа с Helm-ом // ДЗ
Тема 9: Kubernetes Q&A
Инструменты наблюдаемости
В этом модуле вы рассмотрите асинхронный и синхронный API, основы Event Driven Architecture. На примере Kafka рассмотрите распределенные очереди сообщений. Рассмотрите паттерн Transactional Log и инструменты Change Data Capture. Проведете тестирование микросервисов.
Тема 1: Мониторинг и алертинг
Тема 2: Prometheus. Grafana // ДЗ
Тема 3: Системы логирования (ELK, EFK, Graylog2)
Коммуникационные паттерны
В этом модуле вы рассмотрите асинхронный и синхронный API, основы Event Driven Architecture. На примере Kafka рассмотрите распределенные очереди сообщений. Рассмотрите паттерн Transactional Log и инструменты Change Data Capture. Проведете тестирование микросервисов
Тема 1: Backend for frontends. Apigateway // ДЗ
Тема 2: Асинхронный и синхронный API
Тема 3: Event Driven Architecture
Тема 4: Распределенные очереди сообщений на примере Kafka
Тема 5: GraphQL. gRPC
Тема 6: RESTful // ДЗ
Тема 7: Service mesh на примере Istio
Тема 8: Практика системного проектирования
Распределенные системы и хранилища
В этом модуле вы рассмотрите распределенные системы, основные паттерны кэширования. Научитесь решать типичные проблемы, связанные с кэшированием и выбирать инструмент кэширования под задачу. Рассмотрите виды шаринга и проанализируете стратегии шардирования. Обсудите пример реализации своей CP системы и AP системы.
Тема 1: Введение в распределенные системы
Тема 2: Распределенные транзакции // ДЗ
Тема 3: Паттерны кэширования и основные принципы
Тема 4: Шардирование
Тема 5: CP cистемы
Тема 6: AP системы
Тема 7: Паттерны поддержания консистентности данных (Stream processing)
Тема 8: Идемпотентость и коммутативность API в HTTP и очередях // ДЗ
Проектная работа
Заключительный месяц курса посвящен проектной работе. Свой проект — это то, что интересно писать слушателю. То, что можно создать на основе знаний, полученных на курсе. При этом не обязательно закончить его за месяц. В процессе написания по проекту можно получить консультации преподавателей
Тема 1: Консультация по проектам и домашним заданиям // Проект
Тема 2: Защита проектных работ
Также вы можете получить полную программу, чтобы убедиться, что обучение вам подходит
Выпускной проект
Итоговый проект состоит из серии домашних заданий. В рамках их выполнения каждый студент создаст каркас приложения "интернет-магазин" и опробует разные паттерны микросервисной архитектуры, протестирует свое приложение на нагрузку и проблемы сетевой связности.
Посмотреть запись защиты проекта на Youtube по ссылке.
Преподаватели
Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания
Ближайшие мероприятия
Открытый вебинар — это настоящее занятие в режиме онлайн с преподавателем курса, которое позволяет посмотреть, как проходит процесс обучения. В ходе занятия слушатели имеют возможность задать вопросы и получить знания по реальным практическим кейсам
1. Основные моменты проектирования CMS, включая подходы к организации данных и оптимизации производительности.
2. Подходы к настройке систем модулей и плагинов, обеспечивающие гибкость CMS.
3. Методы масштабирования и поддержки высокой нагрузки для стабильной работы CMS при растущем уровне пользователей.
Вебинар будет полезен:
• Разработчикам и инженерам, которые занимаются созданием и поддержкой систем управления контентом.
• Архитекторам ПО, проектирующим высоконагруженные веб-приложения, нуждающиеся в гибкой и масштабируемой CMS.
• Техническим руководителям и тимлидам, стремящимся внедрить лучшие архитектурные решения в свои проекты.
• Владельцам проектов и менеджерам, которые хотят лучше понять возможности и ограничения современных CMS для выбора наилучших решений.
В результате вебинара:
• Вы освоите основные подходы и шаблоны проектирования CMS для создания надёжных и гибких решений.
• Поймите, как построить масштабируемую устойчивую систему управления контентом.
Особенности вебинара / На вебинаре вы узнаете:
1. Основные подходы и паттерны кэширования, применимые в микросервисах.
2. Как кэширование помогает улучшить производительность и сократить время отклика систем.
3. Различные типы кэшей (in-memory, distributed) и их применение в разных сценариях.
4. Как настроить популярные инструменты кэширования, такие как Redis и Memcached, в микросервисной архитектуре.
5. Практические примеры внедрения кэширования для минимизации нагрузки на базу данных и повышения доступности данных.
Вебинар будет полезен:
• Разработчикам, которые хотят повысить производительность своих микросервисов с помощью кэширования.
• Архитекторам ПО, занимающимся проектированием масштабируемых систем и нуждающимся в эффективном управлении данными.
• Тимлидам, стремящимся внедрить лучшие практики кэширования для оптимизации работы команды.
• DevOps-специалистам, отвечающим за конфигурацию и управление инфраструктурой, где важна производительность и доступность данных.
В результате вебинара:
• Вы получите чёткое понимание принципов и паттернов кэширования в микросервисах.
• Освоите лучшие практики настройки кэширования для увеличения производительности системы.
• Узнаете, как эффективно внедрить Redis, Memcached и другие инструменты для кэширования, а также избежать типичных ошибок в процессе разработки.
Особенности вебинара / На вебинаре вы узнаете:
1. Как выбрать правильный способ связи между микросервисами в зависимости от требований вашего приложения.
2. Преимущества и недостатки синхронных (REST, gRPC) и асинхронных (Kafka, RabbitMQ) методов взаимодействия.
Вебинар будет полезен:
• Разработчикам, которые работают с микросервисной архитектурой и хотят повысить эффективность взаимодействия между компонентами.
• Архитекторам ПО, стремящимся проектировать надёжные и масштабируемые системы с учётом разных видов коммуникации.
• Тимлидам, заинтересованным в оптимизации процессов разработки и поддержки микросервисов.
• DevOps-специалистам, которые отвечают за конфигурацию и оркестрацию микросервисов, обеспечивая их стабильность и производительность.
В результате вебинара:
• Вы получите чёткое понимание, когда использовать синхронную и асинхронную коммуникацию.
• Освоите методы улучшения производительности и отказоустойчивости микросервисов через правильный выбор способов связи.
• Узнаете, как настраивать и интегрировать различные инструменты для реализации синхронных и асинхронных вызовов в микросервисных системах.
Прошедшие
мероприятия
Возможность пройти вступительное тестирование повторно появится только через 3 дня
Результаты тестирования будут отправлены вам на email, указанный при регистрации.
Тест рассчитан на 30 минут, после начала тестирования отложить тестирование не получится!
Корпоративное обучение для ваших сотрудников
- Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
- Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
- OTUS проверяет знания студентов перед стартом обучения и после его завершения
- Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
- Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
- OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год
Отзывы
Сертификат о прохождении курса
OTUS осуществляет лицензированную образовательную деятельность.
Выполните выпускной проект в конце обучения и получите удостоверение о повышении квалификации.
После обучения вы:
- получите материалы по всем пройденным занятиям (видеозаписи вебинаров, выполненные домашние задания, выпускной проект)
- сможете планировать архитектуру и создавать масштабируемые, fault-tolerant приложения
- научитесь решать нетривиальные задачи, в рамках распределенных и децентрализованных систем
- получите приглашение пройти собеседование в компаниях-партнёрах (в случае успешного обучения)
Microservice Architecture
Стоимость в рассрочку со скидкой
Стоимость указана для оплаты физическими лицами
вычета до 13% стоимости обучения. Пройдите тестирование и менеджер вас проконсультирует
+7 499 938-92-02 бесплатно