Архитектура

B2B-платформа вырвалась из 8-летнего монолита — деплой сократился с 4 часов до 8 минут

Роль
Full delivery — architecture, build, launch
Сроки
Q1–Q2 2025 — 16 weeks
Команда
3 инженера · QA · PM
Технологии
Symfony, Docker, Kubernetes (AWS EKS), RabbitMQ
B2B-платформа вырвалась из 8-летнего монолита — деплой сократился с 4 часов до 8 минут

Проблема

B2B-дистрибьютор с 2 000+ бизнес-клиентов и €45M годового GMV работал на 8-летнем Symfony-монолите. Один деплой занимал 4 часа даунтайма, баг в модуле ценообразования мог уронить всю платформу, а команда перестала выпускать фичи — 70% времени уходило на тушение пожаров. Три попытки рефакторинга на месте провалились и подорвали уверенность команды.

Что мы сделали

  • Маппинг доменов — Определили 6 ограниченных контекстов (каталог, ценообразование, заказы, клиенты, склад, счета) и описали все кросс-доменные зависимости до написания единой строки кода.
  • Миграция Strangler Fig — Извлекали сервисы по одному за API-шлюзом, оставляя монолит в продакшене. Никакого big-bang переключения — каждый сервис запускался независимо.
  • Kubernetes и CI/CD — Контейнеризировали каждый сервис через Docker, оркестрация через Kubernetes на AWS EKS. Полный CI/CD пайплайн — push в main запускает тесты, сборку и rolling deploy за 8 минут.
  • Event-driven синхронизация — Сервисы общаются через RabbitMQ-события вместо прямых API-вызовов. Eventual consistency с saga-паттернами для сложных воркфлоу: заказ → склад → счёт.
Команда обсуждает дорожную карту проекта и декомпозицию задач на доске во время планирования

Результат

“Мы перестали бояться деплоев по пятницам и начали выкатывать по несколько раз в день. Платформа наконец принадлежит нам, а не наоборот.”

Томас Бергманн — CTO, WholesaleHub GmbH · Берлин
97%Deploy time reduction
2Incidents per month
18+Deploys per week
+35%GMV growth, year 1