Очный курс «Разработка микросервисов» я провел за полтора года около 40 раз, как в открытом, так и в корпоративном формате. Ситуация с переходом на удаленную работу форсировала перевод части курсов в онлайн. Первым стал курс «Разработка микросервисов». Ниже расскажу об отличиях и особенностях.
На протяжении курса мы будем строить микросервисное архитектурное решение. Задание будет отличаться от задания в очном варианте. Каждый блок теории закрепляется командной практикой (площадка дает возможность получить хороший командный опыт работы несмотря на то, что это онлайн) и индивидуальными тестами для самопроверки.
Онлайн курс поделен на четыре больших блока:
- Моделирование микросервисов
- Организационные практики
- Технические практики
- Переход от монолита к микросервисам
Каждый блок — это набор видео для самостоятельного просмотра, материалы для самостоятельного изучения, отчуждаемые материалы для использования в работе и пара вебинаров по 1.5 часа, на которых мы разбираем ваши вопросы и результаты домашних заданий.
Немного подробнее о каждом из блоков.
Моделирование микросервисов
Определим, что такое микросервис, где стоит применять, а где — нет, какие компании применяют и что они получили с переходом. Разберем особенности моделирования микросервисов, практику Event Storming, применение Domain Driven Design. Разберем, что такое размер микросервиса и почему размер здесь не на первом месте. После этого посмотрим на то, как можно документировать результаты и в заключении разберем два кейса — один с унаследованной системой и один с почти новой.
how can google help with school jupas essay nursing source site charles bibby thesis purpose of doing business plan go site boots viagra price 2010 https://shepherdstown.info/conclusion/paper-airplane-design-research/17/ www.fildena.com generic cialis uk cost enter site essay a job you hate how to cite a quote from an editorial in an essay using mla format viagra preo big ben buy suhagra with paypal go to link is taking 150mg of viagra safe viagra cialis prescription online levitra viagra sale composition cialis 10mg autobiography red essay follow link essay about summer love source https://riversideortho.com/effetto-viagra-sulle-donne/ sample xat essays ptcas essay help kamagra shop review personal utopia essays source link Основные темы
- Что такое микросервис?
- Кейс
- Особенности моделирования микросервисов
- Практика 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, то можно получить промокод. Для этого достаточно указать в письме свои ожидания от курса и/или текущие проблемы, связанные с микросервисами или архитектурой/дизайном в целом.
Что дальше?
Микросервисы — не конечная точка. Появляются и еще появятся новые архитектурные стили. В их основе будут лежать доказавшие свою состоятельность нынешние решения в области технологий и процессов.
Когда именно появится что-то новое и революционное — неизвестно. Однако, существует не нулевая вероятность, что оно появится именно как развитие микросервисов. В крайнем случае — будет основано на мыслях и выводах от их использования.