Мы используем cookie для стабильной работы сервиса. Подробнее

Microservices — паттерны и практика построения микросервисов

ФорматОнлайн
Объём14 занятий
По окончанииАнтон Ларичев
О курсе

Подробнее

Всё больше компаний обращает своё внимание на микросервисную архитектуру, так как она решает множество проблем монолитных приложений: непростое горизонтальное масштабирование, устаревающий стек, высокая связанность и запутанность кода, а так же медленные процессы сборки, тестирования и выкладки. За счёт атомарности, микросервисная архитектура призвана решить все эти проблемы, а так же повысить отказоустойчивость и упростить поддержку. Но для всего есть и обратная сторона. Микросервисная архитектура требует совершенно другого подхода в проектировании и реализации. В курсы мы как раз посмотрим на все особенность построения микросервисной архитектуры. Мы разберём паттерны взаимодействия, декомпозиции, реализации команд и запросов, модели доменных событий и множество подводных камней, которые вы встретите при внедрении микросервисов. Курс был составлен исходя из моего реального опыта внедрения микросервисов в разных компаниях и тех трудностей, с которыми мне пришлось столкнуться. Несмотря на то, что в курсе мы будем писать код на TypeScript под Node.js, на фреймворке NestJS, он будет полезен и тем, кто пишет на других языках так как содержит много полезного теоретического материала. Мы изучим: - Алгоритм декомпозиции проекта на сервисы - Нотацию описания архитектуры приложения - Работу с репозиторием NX - Организацию коммуникации между микросервисами - Доменные события - их обработку и генерацию - Работу с шинами сообщения и в частности с RabbitMQ - Написание Микросервисов на NestJS - Реализацию паттерна CQRS - Построение масштабируемой асинхронной архитектуры - Обеспечение консистентности данных и паттерн Сага - Особенностям тестирования микросервисов - Паттерны реализации API - Паттерны работы с базами данных - Особенности выкладки и эксплуатации микросервисов Лекции чётко разделены на теоретическую часть  и live-code, где мы вместе будем писать код, создавая реальные backend для моей школы PurpleSchool. Благодаря этому разделению независимо от языка вы сможете получить полезные знания. В конце каждого модуля вас ожидает тест, который позволит укрепить ваши знания. В результате курса вы получите знания и навыки для эффективного внедрения микросервисного подхода в вашем проекте или компании. Весь написанный в курсе код в реальности используется на production и все подходы справедливы для систем любой сложности. На практике я реализовывал архитектуру системы, которая состояла более чем из 70 микросервисов.
Требования

Что нужно для старта

  • Чтобы получить максимум, рекомендуется знание Node.js. Для других языков полезным будет только часть курса.
Результат

Что вы получите

  • Декомпозировать проект на сервисы
  • Описывать архитектуру приложения
  • Работать с монорепозиторием NX
  • Реализовывать коммуникацию между микросервисами
  • Создавать и обрабатывать доменные события
  • Работать с RabbitMQ
  • Писать микросервисы на NestJS
  • Паттерну CQRS
  • Реализовать бизнес логику в сервисе
  • Асинхронной архитектуре
  • Обеспечивать консистентность данных
  • Реализовать паттерн Сага
  • Тестировать микросервисовы
  • Основным особенностям выкладки и эксплаутации
Аудитория

Для кого этот курс

  • Backend разработчикам на любом языке, которые хотят разобраться в микросервисной архитектуре и практикам её построения. Backend разработчикам на Node.js, которые не только хотят разобраться в паттернах и подходах, но и посмотреть на реальные практики реализации. Системным архитекторам для пополнения багажа знаний об асинхронных архитектурах.
Содержание

Программа курса

14 занятий
ТемаЧто внутри
01Введение

- Когда нужны микросервисы?
- Как устроен курс?
- Обзор проекта
- Обзор курсов
- Перенос курса

02Настройка окружения

- Подготовка окружения
- Установка NodeJS
- Настройки VSCode

03Нотация описания архитектуры

- Вводное видео
- Разбор компонент
- Использование Figma
- Пример описания

04Переход к микросервисам

- Вводное видео
- Монолит VS Микросервисы
- Вопросы масштабирования
- Декомпозиция функционала
- Алгоритм декомпозиции
- Упражнение - Схема после декомпозиции
- Тест - Переход к микросервисам

05Монорепозитории

- Вводное видео
- Монорепозиторий или нет
- Обзор NestJS
- Код - Настраиваем nx monorepo
- Код - Создаём модели
- Код - Реализуем авторизацию
- Код - Запускаем проект
- Тест - Монорепозитории

06Обмен сообщениями

- Вводное видео
- Методы обмена
- Простая коммуникация
- Коммуникация через брокера
- Минимизация синхронности
- Упражнение - Доработка схемы взаимодействия
- Тест - Обмен сообщениями

07RabbitMQ

- Вводное видео
- Устанавливаем RabbitMQ
- Устройство RabbitMQ
- Типы exchange
- Администрирование RabbitMQ
- Код - Простой обмен сообщении
- Код - Реализация запрос / ответ
- Тест - RabbitMQ

08Реализация взаимодействия

- Вводное видео
- Код - Добавление библиотеки контрактов
- Код - Разбор nestjs-rmq
- Код - Подключения rabbitmq к проекту
- Код - Валидация запросов

09Реализация API

- Вводное видео
- Стратегии реализации API
- Паттерны получения данных
- Код - Авторизация на API
- Код - Взаимодействие с account
- Тест - Реализация API

10Реализация бизнес логики

- Вводное видео
- Бизнес логика и события
- Доработка архитектуры Accounts
- Код - Структурируем сервис Accounts
- Упражнение - Реализуем Commands
- Тест - Реализация бизнес логики

11Консистентность данных

- Вводное видео
- Саги - консистентность данных
- Паттерн State
- Код - Подготовка саги
- Код - Состояния саги
- Упражнение - Доработка состояний
- Код - Реализация Commands
- Код - Доменные события
- Тест - Консистентность данных

12Тестирование микросервисов

- Вводное видео
- Виды тестирования
- Код - Тесты авторизации
- Код - Тесты для Саги
- Упражнение - Проверка статуса платежа
- Тест - Тестирование микросервисов

13Выкладка и эксплуатация

- Вводное видео
- Базы данных
- Периодические задачи
- Логирование и метрики
- Особенности выкладки
- С чего начать переход
- Тест - Выкладка и эксплуатация

14Заключение

- Куда двигаться дальше?

01Введение

- Когда нужны микросервисы?
- Как устроен курс?
- Обзор проекта
- Обзор курсов
- Перенос курса

02Настройка окружения

- Подготовка окружения
- Установка NodeJS
- Настройки VSCode

03Нотация описания архитектуры

- Вводное видео
- Разбор компонент
- Использование Figma
- Пример описания

04Переход к микросервисам

- Вводное видео
- Монолит VS Микросервисы
- Вопросы масштабирования
- Декомпозиция функционала
- Алгоритм декомпозиции
- Упражнение - Схема после декомпозиции
- Тест - Переход к микросервисам

05Монорепозитории

- Вводное видео
- Монорепозиторий или нет
- Обзор NestJS
- Код - Настраиваем nx monorepo
- Код - Создаём модели
- Код - Реализуем авторизацию
- Код - Запускаем проект
- Тест - Монорепозитории

06Обмен сообщениями

- Вводное видео
- Методы обмена
- Простая коммуникация
- Коммуникация через брокера
- Минимизация синхронности
- Упражнение - Доработка схемы взаимодействия
- Тест - Обмен сообщениями

07RabbitMQ

- Вводное видео
- Устанавливаем RabbitMQ
- Устройство RabbitMQ
- Типы exchange
- Администрирование RabbitMQ
- Код - Простой обмен сообщении
- Код - Реализация запрос / ответ
- Тест - RabbitMQ

08Реализация взаимодействия

- Вводное видео
- Код - Добавление библиотеки контрактов
- Код - Разбор nestjs-rmq
- Код - Подключения rabbitmq к проекту
- Код - Валидация запросов

09Реализация API

- Вводное видео
- Стратегии реализации API
- Паттерны получения данных
- Код - Авторизация на API
- Код - Взаимодействие с account
- Тест - Реализация API

10Реализация бизнес логики

- Вводное видео
- Бизнес логика и события
- Доработка архитектуры Accounts
- Код - Структурируем сервис Accounts
- Упражнение - Реализуем Commands
- Тест - Реализация бизнес логики

11Консистентность данных

- Вводное видео
- Саги - консистентность данных
- Паттерн State
- Код - Подготовка саги
- Код - Состояния саги
- Упражнение - Доработка состояний
- Код - Реализация Commands
- Код - Доменные события
- Тест - Консистентность данных

12Тестирование микросервисов

- Вводное видео
- Виды тестирования
- Код - Тесты авторизации
- Код - Тесты для Саги
- Упражнение - Проверка статуса платежа
- Тест - Тестирование микросервисов

13Выкладка и эксплуатация

- Вводное видео
- Базы данных
- Периодические задачи
- Логирование и метрики
- Особенности выкладки
- С чего начать переход
- Тест - Выкладка и эксплуатация

14Заключение

- Куда двигаться дальше?

Документ после выпуска

Антон Ларичев

Организатор

Автор курса

StepikStepik
Stepik — образовательная платформа и конструктор онлайн-курсов. Мы разрабатываем алгоритмы адаптивного обучения, сотрудничаем с авторами MOOC, помогаем в проведении олимпиад и программ переподготовки. Наша цель — сделать образование открытым и удобным. Stepik — широко известная российская образовательная платформа, основанная в 2013 году. На Stepik зарегистрировано более миллиона пользователей из России и стран СНГ. В настоящее время на Stepik представлены несколько тысяч учебных курсов на самые разные темы.
Подробнее об авторе
Мнения учеников

Отзывы о курсе

Оставьте отзыв

Расскажите о качестве обучения, поддержке и результате. Это поможет другим выбрать организацию осознанно.

Напишите ваш коментарий, не менее 30 символов

Нажимая кнопку, вы даете согласие на обработку персональных данных

Оставьте заявку

Консультант ответит на вопросы о курсе «Microservices — паттерны и практика построения микросервисов» и поможет разобраться в деталях обучения.

Комментарий ...

Нажимая кнопку, вы даете согласие на обработку персональных данных

Направления:Backend-разработка

Информация обновлена 3 сентября 2026 г.

Продолжить выбор

Похожие курсы

Гуру разработки на Django
4 часа
Гуру разработки на Django

Создайте 4 крутых веб-сайта, изучите Back и Frond End веб разработку, сверстайте сайты с HTML, CSS и Bootstrap. В курсе, больше сосредоточенном на бекенде, вы создадите интернет-м…

Онлайн1 занятий
2 890 ₽
Обучение FastAPI
−50%1 месяц
Обучение FastAPI

Вы узнаете, как организовать мероприятие любого масштаба. Научитесь придумывать уникальные концепции под запросы заказчиков, собирать команды и вести документацию. Сможете устроит…

Онлайн
70 000 ₽−50%
35 000 ₽от 2 917 ₽/мес на 12 мес.
Java-разработчик с нуля
−35%
Java-разработчик с нуля

Освойте backend-разработку и программирование на Java, фреймворки Spring и Maven, работу с базами данных и API

ОнлайнНачальный
19 900 ₽−35%
12 930 ₽Рассрочка на 12 мес.
Node.js для backend-разработки
−50%5 сентября
Node.js для backend-разработки

Пройдите курс по Node.js онлайн от Нетологии. Освойте backend-разработку на Node.js, создавайте приложения и становитесь востребованным специалистом. Запишитесь сейчас и начните о…

Онлайн42 занятий
90 909 ₽−50%
45 000 ₽Скидка до 9 сентября
FastAPI и микросервисы
10 часов
FastAPI и микросервисы

Курс «Микросервисы на FastAPI» — это не про то, как написать еще один сайт, а про то, как заложить грамотную архитектуру, которая выдержит рост бизнеса. Мы не будем углубляться в…

Онлайн11 занятий
9 990 ₽