Sleepr
Платформа бронирования на микросервисах
Роль
Backend-разработчик
Год
2024
Стек
NestJSMicroservicesRabbitMQMongoDBStripeDocker
Задача
Пойти глубже CRUD: построить реалистичную микросервисную систему с независимым деплоем, асинхронными сообщениями, платежами и правильными границами сервисов — те архитектурные вопросы, о которых фронтендеры обычно только читают.
Этапы
Границы сервисов
Разделил домен на сервисы авторизации, бронирований, платежей и уведомлений — у каждого своя база и свой цикл деплоя.
Асинхронное взаимодействие
Транспорт RabbitMQ между сервисами, проброс JWT через границы, интеграция Stripe в платёжном сервисе.
Эксплуатация
Общая библиотека для сквозной логики, оркестрация через Docker Compose и health-чеки для каждого сервиса.
Результаты
независимых микросервиса
асинхронный обмен через RabbitMQ
платёжный поток как в проде