О чём курс

Программа курса "Микросервисы на Java" включает 5 модулей, которые позволяют слушателям ознакомиться с концепциями и паттернами микросервисной архитектуры, а также применить эти знания на практике.

В первом модуле слушатели знакомятся с концепцией микросервисов, изучают архитектуру и компоненты микросервисов.

Во втором модуле студенты изучают декомпозицию системы на микросервисы с использованием трех методологий: принципов Объектно-Ориентированного проектирования, декомпозиции по бизнес-способностям и декомпозиции по поддоменам (на основе Domain Driven Design).

Третий модуль посвящен коммуникации между микросервисами, включая синхронную и асинхронную коммуникацию, использование RESTful API и использование Kafka.

В четвертом модуле слушатели изучают управление данными в микросервисной архитектуре, включая распределенные транзакции, CAP-теорему, паттерн SAGA, Event Sourcing, паттерн CQRS, паттерн Outbox. Также затрагивается вопрос управления миграцией данных на основе Liquibase.

В пятом модуле слушатели узнают о деплое микросервисов, включая контейнеризацию, упаковку приложений в Docker-контейнеры, настройку Kubernetes и автоматическое масштабирование.

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

Цели

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

Целевая аудитория

Java-разработчики

Предварительная подготовка

Умение писать код на Java, понимание основных концепций объектно-ориентированного программирования, знание основных библиотек и фреймворков

Знание Spring Boot

Знание основных принципов веб-разработки, включая HTTP, REST, JSON

Понимание основных принципов работы с базами данных, знание SQL и опыт работы с реляционными базами данных

Опыт работы с инструментами разработки на Java, такими как Maven, Gradle, Git и IDE

Для кого

Разработчик Разработчик

Улучшаемые навыки

Проектирование микросервисов
Создание RESTful API
Управление конфигурацией и зависимостями
Обработка ошибок и устойчивость
Мониторинг и логирование

Темы курса

01 Погружение в микросервисы [Теория 4 ч.]

  • Что такое микросервисы и как они связаны с Java?

  • Преимущества и недостатки микросервисной архитектуры

  • Основные принципы микросервисов

02 Декомпозиция на микросервисы [Теория 2 ч.; Практика 2 ч.]

  • Проектирование микросервисов на Java

  • Декомпозиция на основе принципов Объектно-Ориентированного Дизайна

  • Декомпозиция на основе принципов Бизнес-возможностей

  • Определение границ между сервисами

  • Использование Domain-Driven Design в микросервисной архитектуре

03 Коммуникация между микросервисами на Java [Теория 3 ч.; Практика 4 ч.]

  • Протоколы взаимодействия микросервисов на Java

  • Синхронное взаимодействие между микросервисами с помощью REST API

  • Использование message brokers для обмена данными между сервисами на Java

04 Управление данными в микросервисах на Java [Теория 3 ч.; Практика 5 ч.]
  • Хранение данных в микросервисах

  • Различные подходы к управлению данными

  • Стратегии персистентности в микросервисах

- Общая База Данных

- База Данных на Сервис

- Схема на Сервис
  • CAP теорема
  • Eventual consistency

  • Распределенные транзакции

  • Паттерн SAGA

  • Паттерн Event Sourcing

  • Паттерн CQRS

  • Паттерн Outbox

  • Миграции данных с помощью Liquibase

05 Деплоймент микросервисов [Теория 3 ч.; Практика 4 ч.]

  • Использование Docker для контейнеризации микросервисов

  • Использование Kubernetes для деплоя и масштабирования микросервисов

06 Практические задания

  • Анализ предметной области и декомпозиция домена на поддомены, выделение микросервисов

  • Реализация микросервисов как независимых Spring Boot приложений

  • Реализация синхронной коммуникации между микросервисами с использованием REST API и OpenFeign

  • Реализация асинхронного обмена сообщениями между микросервисами с применением Kafka и Stream Cloud Stream.

  • Практика реализации распределенных транзакций с помощью SAGA

  • Практика реализации паттерна Outbox для надежной доставки сообщений

  • Практика миграции данных с помощью Liquibase

  • Контейнеризация микросервисов на Java с использованием Docker

  • Развертывание микросервисов в Kubernetes-кластере.

07 Итого на курс 30 часов: теория – 15 ч (50 %), практика – 15 ч (50%)

59 900 ₽

53 910 ₽ — для физ. лиц

Записаться на курс

Чему вы научитесь

01 Научитесь проектировать микросервисы, определяя их границы и ответственность
02 Освоите методы разработки RESTful API для микросервисов, включая использование Spring Boot и Spring MVC
03 Научитесь использовать Spring Cloud Config и другие инструменты для управления конфигурацией микросервисов
04 Освоите паттерны обработки ошибок и устойчивости
05 Научитесь применять инструменты мониторинга и логирования

59 900 ₽

53 910 ₽ — для физ. лиц

Записаться на курс

Записаться на курс

59 900 ₽

53 910 ₽ — для физ. лиц

Юр. лицо — 59 900 ₽
Физ. лицо — 53 910 ₽
09.12.2024, Онлайн
09.12.2024, Онлайн
Открытая дата
Продолжая, я подтверждаю, что ознакомлен с Условиями использования и Порядком обработки персональных данных

Связанные курсы

ADM-021
28 часов

Практика работы с Kubernetes. Базовые темы

В данном курсе вы получите все необходимые знания для работы с Kubernetes. Вы узнаете, что такое Kubernetes, познакомитесь с его архитектурой, изучите основные компоненты и службы, чтобы запустить ваш проект. Вы поднимите учебный кластер Kubernetes, опишите и запустите такие сущности Kubernetes, как поды, наборы реплик и развёртывания. Вы узнаете, как организовано сетевое взаимодействие в Kubernetes, какие имеются виды сервисов, и когда их лучше использовать. Вы настроите приложение с помощью ConfigMaps и будете использовать сущности Secrets для хранения конфиденциальных данных. Курс заканчивается обсуждением томов для долговременного хранения данных. Помимо фундаментальных знаний, вы узнаете устранять неполадки в случае, если что-то пойдет не так.

от Middle

45 500 ₽

ARC-003
24 часа

Domain Driven Design

Курс по основам предметно-ориентированного проектирования для гибкости систем, декомпозиции бизнес-логики и тактических паттернов.

от Middle

46 900 ₽

ARC-015
24 часа

Микросервисная архитектура

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

от Middle

48 900 ₽

EAS-026
24 часа

Основы Kafka

Вводный тренинг по Apache Kafka – платформе распределенной потоковой передачи событий с открытым исходным кодом. Рассматриваются архитектурные особенности Kafka, обеспечивающие высокопроизводительную доставку данных.

от Middle

44 500 ₽

JVA-043
24 часа

Spring Cloud для Java-разработчиков

Spring Cloud – это проект, который позволяет создавать распределенные приложения с микросервисной архитектурой. Вы познакомитесь с множеством доступных компонентов, детально рассмотрите архитектуру и широкие возможности Spring Cloud.

от Senior

37 500 ₽

Наши ученики работают в:

Наши клиенты

Mail.ru
Альфа-Банк, банковская группа
Лаборатория Касперского
Магнит, розничная сеть
Спортмастер, сеть спортивных магазинов
ПСБ
Сбертех
Дзен
IT One
Ростелеком
Мегафон
Nexign
Ozon
Декатлон
X5 Group
Технониколь
Росатом
Газпром
Нлмк
ВСК
Синимекс

Не нашли, что искали? — Просто напишите, и мы поможем

Продолжая, я подтверждаю, что ознакомлен с Условиями использования и Порядком обработки персональных данных
Корпоративное обучение Оценка персонала Сертификация О нас Стань тренером Блог
Пользователь только что записался на курс ""
Спасибо!
Форма отправлена успешно.