Чему вы научитесь
- Собирать приложение на Micronaut 5.1 и Java 27: контейнер бинов, скоупы, квалификаторы, @Factory, @Requires, @Replaces, типобезопасная конфигурация
- Писать HTTP-слой на Micronaut: контроллеры, привязку параметров и тела, @ServerFilter, маршрутизацию ошибок, лимиты Netty
- Описывать контракты API через Micronaut Serialization, jakarta.validation, RFC 9457 и генерируемый из исходников OpenAPI
- Выбирать модель исполнения осознанно: event loop, @ExecuteOn, виртуальные потоки, реактивные типы и распространение PropagatedContext
- Работать с данными через Micronaut Data JDBC: @MappedEntity, производные запросы, @Query, проекции, Criteria API, пагинация, батчи
- Управлять транзакциями и схемой: @Transactional и его ловушки, программные транзакции, Flyway, оптимистичная блокировка, несколько источников данных
- Применять compile-time AOP: свои аннотации и перехватчики, @Retryable, @CircuitBreaker, кэширование, @Introduction
- Строить устойчивые интеграции на декларативных и низкоуровневых HTTP-клиентах с фильтрами, таймаутами и повторами
- Настраивать аутентификацию и авторизацию в Micronaut Security: JWT, refresh-токены, API-ключи, авторизацию по данным, мультитенантность
- Использовать Redis из Micronaut как кэш, атомарный счётчик квот и распределённый примитив
- Организовывать фоновую работу: @Scheduled, TaskScheduler, однократность в кластере, события приложения, graceful shutdown
- Передавать и обрабатывать сообщения через Micronaut Kafka: @KafkaClient, @KafkaListener, стратегии ошибок, retry-топики, батчи, Kafka Streams
- Тестировать Micronaut-приложение: @MicronautTest, Test Resources, подмена бинов, тесты контроллеров, данных, Kafka и безопасности
- Делать систему наблюдаемой: management-эндпоинты, health-индикаторы, Micrometer с Prometheus, OpenTelemetry, корреляция логов
- Добавлять real-time: @ServerWebSocket, broadcaster, SSE, GraphQL с резолверами и загрузчиками данных
- Собирать native image на GraalVM, настраивать Micronaut AOT и понимать, где native не подходит
- Готовить приложение к продакшену: конфигурация, сборка образов, Kubernetes, многомодульный проект, миграция с Micronaut 4
О курсе
Для кого этот курс
Начальные требования
Опыт промышленной разработки серверных приложений на любом языке: HTTP, SQL, очереди, кэши, конкурентность, деплой. Умение читать Java-код; глубокого знания языка не требуется, но синтаксис должен быть знаком.
Для практики: JDK 27, Docker (для PostgreSQL, Redis и Kafka — их поднимает Micronaut Test Resources), любая IDE с поддержкой Gradle. Для главы про native image — GraalVM 25. Gradle отдельно устанавливать не нужно, в проекте есть wrapper.
Преподаватели курса
Формат курса
Курс текстовый, без видео. Уроки построены так: инженерная ситуация, механизм Micronaut, исходный код, последствия в продакшене, типичные ошибки, практическая задача по проекту Meterway и вопросы для самопроверки.
Практика выполняется в собственной копии проекта: репозиторий приводится к состоянию урока, задача добавляет к нему следующий кусок. Главы с третьей по пятнадцатую завершаются тестовыми задачами с одним верным вариантом и объяснением после ответа. Дедлайнов нет, порядок глав последовательный, вопросы можно задавать в комментариях к урокам.
Что вы получите
- Восемнадцать глав и сто семьдесят два текстовых урока с исходным кодом, доступные бессрочно
- Полный код сквозного проекта Meterway на Java 27 и Micronaut 5.1: собирается, запускается, покрыт тестами
- Тестовые задачи к главам с третьей по пятнадцатую с объяснением каждого ответа
- Практическая задача по проекту и вопросы для самопроверки в конце каждого урока
- Готовые к переносу в свой сервис решения: конвейер фильтров, обработка ошибок в RFC 9457, идемпотентный приём, квоты на Lua, outbox, тестовый контур на Test Resources