О курсе

Курс построен как последовательное руководство по переходу от монолитной архитектуры к микросервисной. В начале разбираются предпосылки такого перехода, настройка окружения и нотации описания архитектуры. Затем рассматриваются монорепозитории на базе Nx и организация обмена сообщениями, включая работу с RabbitMQ.

Значительная часть программы посвящена практической реализации: взаимодействию между сервисами, построению API, реализации бизнес-логики и обеспечению консистентности данных. Отдельные разделы касаются паттерна CQRS, доменных событий и паттерна Сага. Также в курсе рассматриваются тестирование микросервисов и особенности их выкладки и эксплуатации.

Материал включает 118 видеоуроков с конспектами, 5 упражнений и 43 теста для проверки знаний. Автор отмечает, что курс составлен на основе его опыта внедрения микросервисов в компаниях. Хотя примеры кода приводятся на TypeScript, Node.js и NestJS, теоретическая часть может быть полезна разработчикам и на других языках. Для полноценного освоения рекомендуется знание Node.js.

Что рассматривается в программе

  • Рассматривается декомпозиция проекта на сервисы и описание архитектуры приложения.
  • Разбирается работа с монорепозиторием Nx.
  • Изучается организация обмена сообщениями и работа с RabbitMQ.
  • Рассматривается реализация взаимодействия между микросервисами и создание доменных событий.
  • Разбирается паттерн CQRS и реализация бизнес-логики в сервисе.
  • Рассматриваются подходы к обеспечению консистентности данных и паттерн Сага.
  • Уделяется внимание тестированию микросервисов, их выкладке и эксплуатации.

Кому может быть полезен курс

  • Разработчикам, интересующимся переходом от монолитной архитектуры к микросервисной.
  • Специалистам, которым нужно ознакомиться с паттернами декомпозиции и взаимодействия сервисов.
  • Тем, кто планирует работать с RabbitMQ, Nx и NestJS в контексте микросервисов.
  • Разработчикам на других языках, которым интересна теоретическая часть по микросервисной архитектуре.

Вопросы о программе

Какие технологии используются в курсе для примеров кода?

В материалах курса примеры приводятся на TypeScript под Node.js с использованием фреймворка NestJS, монорепозитория Nx и RabbitMQ.

Подойдёт ли курс разработчикам на других языках программирования?

Автор отмечает, что курс содержит много теоретического материала, поэтому часть программы может быть полезна и тем, кто пишет на других языках, хотя практические примеры ориентированы на Node.js.

Какие паттерны рассматриваются в курсе?

В программе заявлены паттерны декомпозиции, взаимодействия сервисов, CQRS, доменные события, а также паттерн Сага для обеспечения консистентности данных.

Какие требования к подготовке слушателей?

Для получения максимальной пользы рекомендуется знание Node.js. Для слушателей на других языках полезной будет только часть курса.