Этот курс поможет вам шаг за шагом освоить переход от монолитной архитектуры к микросервисам, используя React, Next.js, Laravel, Docker, RabbitMQ, Redis и другие современные инструменты. Вы узнаете, как построить масштабируемую систему, начиная с монолита и постепенно внедряя микросервисы без сложностей и лишней теории.
Что вы изучите в этом курсе
Курс сочетает практику и структурированное объяснение архитектуры, чтобы вы понимали, как именно и зачем переходить к микросервисам.
- Создание полного SPA-приложения с React, Next.js и Laravel;
- Настройка аутентификации через Laravel Passport;
- Проектирование микросервисов, управляемых событиями, на основе RabbitMQ;
- Использование Docker для контейнеризации каждого микросервиса;
- Работа с внутренними API и безопасной коммуникацией между сервисами;
- Настройка Redis для кэширования, очередей и оптимизации;
- Интеграция Stripe и других внешних сервисов;
- Использование Redux для управления состоянием в React-приложении;
- Ограничение доступа к защищённым маршрутам;
- Публикация собственных PHP-пакетов в Packagist.
Построение монолитного приложения
На первом этапе вы создадите устойчивый монолит с понятной архитектурой. Это станет фундаментом для дальнейшего перехода на микросервисы.
Frontend на React и Next.js
Вы научитесь создавать SEO‑дружественный интерфейс, работать с серверным рендерингом, страницами и API‑роутами, а также подключать Redux для управления состоянием.
Backend на Laravel
Laravel будет использоваться как единая точка входа в приложение. Вы настроите аутентификацию, API, обработку бизнес‑логики и интеграцию с базой данных.
Аутентификация через Laravel Passport
Курс объясняет, как работать с OAuth2, безопасно хранить токены и ограничивать доступ к API‑маршрутам.
Переход от монолита к микросервисам
После создания рабочей монолитной системы вы начнёте превращать её в распределённую архитектуру — постепенно, безопасно и с сохранением функционала.
Микросервисы, управляемые событиями
Вы научитесь проектировать сервисы, которые реагируют на события (event‑driven architecture), используя RabbitMQ как брокер сообщений.
Коммуникация через очереди RabbitMQ
Очереди позволяют сервисам обмениваться событиями, не зависеть друг от друга и оставаться отказоустойчивыми.
Контейнеризация с Docker
Для каждого микросервиса вы создадите отдельный контейнер, что повышает гибкость, масштабируемость и упрощает деплой.
Использование Redis
Redis используется как быстрый кэш, брокер очередей и инструмент ускорения микросервисной архитектуры.
Интеграции и расширение возможностей
Дополнительно вы научитесь подключать платежные решения, внешние API и даже создавать собственные пакеты для публикации в Packagist.
Интеграция Stripe
Платежные процессы включают создание платежей, валидацию транзакций и работу с вебхуками.
Публикация PHP‑пакетов
Вы узнаете, как разрабатывать и публиковать собственные Composer‑пакеты, чтобы использовать их в своих проектах или делиться с сообществом.
Итог
Этот курс — полный путь от создания современного монолитного приложения до развертывания продвинутой микросервисной архитектуры. После прохождения вы сможете уверенно строить масштабируемые, отказоустойчивые и гибкие системы на стеке React, Laravel и Docker.