Онлайн курс «Разработка микросервисов»

Очный курс «Разработка микросервисов» я провел за полтора года около 40 раз, как в открытом, так и в корпоративном формате. Ситуация с переходом на удаленную работу форсировала перевод части курсов в онлайн. Первым стал курс «Разработка микросервисов». Ниже расскажу об отличиях и особенностях.

На протяжении курса мы будем строить микросервисное архитектурное решение. Задание будет отличаться от задания в очном варианте. Каждый блок теории закрепляется командной практикой (площадка дает возможность получить хороший командный опыт работы несмотря на то, что это онлайн) и индивидуальными тестами для самопроверки.

Онлайн курс поделен на четыре больших блока:

  • Моделирование микросервисов
  • Организационные практики
  • Технические практики
  • Переход от монолита к микросервисам

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

Немного подробнее о каждом из блоков.

Моделирование микросервисов

Определим, что такое микросервис, где стоит применять, а где — нет, какие компании применяют и что они получили с переходом. Разберем особенности моделирования микросервисов, практику Event Storming, применение Domain Driven Design. Разберем, что такое размер микросервиса и почему размер здесь не на первом месте. После этого посмотрим на то, как можно документировать результаты и в заключении разберем два кейса — один с унаследованной системой и один с почти новой.

Основные темы

  • Что такое микросервис?
  • Кейс
  • Особенности моделирования микросервисов
  • Практика Event Storming
  • Domain Driven Design на базе Event Storming применительно к микросервисам
  • Размеры микросервисов
  • Документирование модели
  • Два кейса

Организационные практики

Для микросервисов нужны и важны организационные практики. Редко, когда микросервисное решение появляется в совсем небольших стартапах на 2-5 человек (если знаете о таких, напишите мне на sb@agilemindset.ru). Здесь разберем закон Конвея, универсальный закон масштабирования применительно к себе, команде, нескольким командам и типичную структуру команды, разрабатывающей микросервис. После этого посмотрим на командные и межкомандные практики взаимодействия (в том числе ChatOps и InnerSourcing).

Основные темы

  • Как меняется организация при переходе на микросервисы?
  • Кейс
  • Закон Конвея
  • Универсальный закон масштабирования
  • Командные практики
  • Межкомандное взаимодействие
  • Кейс

Не даром с приходом микросервисов все чаще можно услышать, что архитектор теперь занимается не только техническим решением, но и дизайном структуры компании 🙂

Технические практики

После того, как ясна модель сервисов и модель организации, переходим к техническим аспектам. Разбираем особенности масштабирования микросервисов, паттерны CQRS/ES и Saga. На уровне архитектуры закладываем возможности для различных видов поставки, тестирования, мониторинга, обеспечения безопасности и надежности. В конце блока сводим к повторяемым паттернам, готовым к использованию.

Основные темы

  • Масштабирование микросервисов
  • Интеграция микросервисов
  • CQRS/ES и Saga
  • Развертывание микросервисов
  • Тестирование микросервисов
  • Мониторинг микросервисов
  • Безопасность в микросервисах
  • Обеспечение надежности
  • Паттерны проектирования микросервисов

От монолита к микросервисам

Эту тему давать очень сложно, потому что у каждого свой контекст существования текущих систем, поэтому здесь фокус на том, чтобы показать основные принципы и общепринятые, шаблонные практики. Отдельно разбирается тема разделения базы данных, эта тема существенно опирается на знания из блока «Моделирование микросервисов».

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

Основные темы

  • Прицнипы перехода от монолита к микросервисам
  • Кейсы: у кого получилось?
  • От монолита к модульному монолиту
  • Переход через API Gateway
  • Переход через Proxy-монолит
  • Паттерны разделения баз данных
  • Изменения в организацонное структуре
  • Кейс: стратегия перехода от монолита к микросервисам

Что в итоге?

Вы получите каркас знаний о микросервисах и направление для более глубокого изучения каждой отдельной темы. Так же Вы опробуете новые практики (а кто уже опробовал, наверняка откроет для себя новые способы применения и фишки).

Основная ценность для компаний в том, чтобы не потратить миллионы на исправление ошибок, которые можно не допустить, если знать о них заранее, а для отдельных участников — в получении концентрированной выжимки знаний и практики.

Когда?

Курс пройдет с 18 мая по 15 июня. Зарегистрироваться на курс «Разработка микросервисов» можно здесь.

Если написать мне лично на sb@agilemindset.ru, то можно получить промокод. Для этого достаточно указать в письме свои ожидания от курса и/или текущие проблемы, связанные с микросервисами или архитектурой/дизайном в целом.

Что дальше?

Микросервисы — не конечная точка. Появляются и еще появятся новые архитектурные стили. В их основе будут лежать доказавшие свою состоятельность нынешние решения в области технологий и процессов.

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

Share