Backend-платформа для маркетплейса товаров для дома

Спроектировали и разработали backend-систему для растущего маркетплейса. Обеспечили стабильную обработку заказов, управление каталогом и ценообразованием. Платформа работает под нагрузкой 50 000+ пользователей онлайн и готова к кратному росту.

Отрасль
E-commerce
Формат
B2C
Сроки
4 месяца
Стек
Node.js, PostgreSQL, Redis, Kubernetes

О клиенте

Маркетплейс товаров для дома с фокусом на дизайнерские предметы интерьера. На платформе представлено 500+ продавцов, ежемесячная аудитория — 35 000 активных пользователей.

Быстрорастущий сегмент e-commerce требует надёжной инфраструктуры для обработки заказов без потерь и простоев в пиковые периоды.

Стартап с венчурным финансированием

Задача и проблемы

  • Растущий каталог товаров: сложная структура атрибутов и зависимостей между позициями
  • Высокая нагрузка на обработку заказов в пиковые периоды
  • Сложная логика ценообразования с учётом скидок, промокодов и условий продавцов
  • Необходимость надёжных интеграций с платёжными системами и логистикой
  • Риск простоев и потери заказов при росте трафика
  • Отсутствие технической команды для разработки и поддержки backend

Почему стандартные решения не подошли

Готовые решения (Shopify, WooCommerce) не обеспечивали нужную гибкость каталога и не позволяли реализовать специфическую бизнес-логику маркетплейса с множеством продавцов.

Цели проекта

Обеспечить стабильную обработку заказов

24/7 без потерь в пиковые периоды

Масштабировать платформу под рост аудитории

до 100 000 MAU

Стабилизировать время отклика API

менее 100ms под нагрузкой (p95)

Автоматизировать синхронизацию каталога и остатков

обновление в реальном времени

Наше решение

Разработали модульную backend-платформу с централизованными сервисами обработки заказов и управления каталогом. Архитектура рассчитана на интеграцию с внешними системами и отказоустойчивую работу под нагрузкой.

Сервис каталога

Управление товарами, атрибутами и остатками. Полнотекстовый поиск и фильтрация.

Сервис заказов

Обработка заказов, корзина, расчёт доставки. Контроль статусов и истории.

Сервис пользователей

Аутентификация, профили, избранное, история покупок.

Платёжный шлюз

Интеграция с ЮKassa и Stripe. Обработка платежей и возвратов.

Сервис уведомлений

Email, SMS и push-уведомления о статусах заказов.

Архитектура

Модульная структура с единым API Gateway. Асинхронная обработка через очереди сообщений. Кэширование для снижения нагрузки на базу данных.

Отказоустойчивость

Репликация данных, graceful degradation при сбоях внешних сервисов, автоматическое восстановление.

Мониторинг

Централизованный сбор метрик и логов. Алерты при отклонении от нормы. Трассировка запросов для диагностики.

Как проходила разработка

1

Проектирование архитектуры

Анализ бизнес-требований, проектирование API и структуры данных. 2 недели.

2

Разработка базовых сервисов

Реализация сервисов каталога, заказов и пользователей. 6 недель.

3

Интеграции

Подключение платёжных систем, логистики и уведомлений. 3 недели.

4

Настройка инфраструктуры

Развёртывание в Kubernetes, настройка CI/CD и мониторинга. 2 недели.

5

Нагрузочное тестирование

Проверка производительности под нагрузкой, устранение узких мест. 2 недели.

6

Поэтапный запуск

Развёртывание в продакшен, мониторинг метрик, корректировки. 1 неделя.

Технологии и стек

Backend

Node.js 20
NestJS
TypeScript
GraphQL

Базы данных

PostgreSQL 16
Redis 7
Elasticsearch 8

Инфраструктура

Kubernetes
Docker
Helm
ArgoCD

Мониторинг

Prometheus
Grafana
Jaeger
Sentry

Cloud

AWS EKS
RDS
ElastiCache
S3

Результаты

Измеримые результаты

45ms (p95)

Время ответа API

под рабочей нагрузкой

50 000+

Одновременных пользователей

без деградации в пиковые периоды

1.2 млн/день

Обработка запросов

текущая нагрузка после запуска

99.95%

Доступность

за первые 6 месяцев эксплуатации

Качественные улучшения

  • Стабильная обработка заказов без потерь в пиковые периоды
  • Возможность быстрого добавления новых функций без переработки архитектуры
  • Команда клиента самостоятельно развивает продукт на базе платформы
  • Инфраструктура готова к кратному росту нагрузки

Ценность для бизнеса

Платформа обеспечила запуск продукта в срок. Стабильная работа backend позволила привлечь следующий раунд инвестиций. Стоимость инфраструктуры — $800/мес при текущих нагрузках.

Текущее использование

Платформа обслуживает 35 000 MAU и 500+ продавцов. Система работает в режиме 24/7 с минимальным участием команды эксплуатации.

Возможности масштабирования

Архитектура рассчитана на масштабирование до 1M MAU. Добавление новых регионов и продавцов не требует изменений в ядре системы.

Сложности и выводы

Пиковые нагрузки при распродажах

Проблема

Во время маркетинговых акций нагрузка возрастала в 5–7 раз. Сервис заказов не справлялся, пользователи получали ошибки.

Решение

Внедрили очередь обработки заказов с приоритизацией. Настроили автоматическое горизонтальное масштабирование по метрикам нагрузки.

Вывод

Проектирование под пиковые нагрузки — обязательный этап для e-commerce платформ. Этот архитектурный подход мы используем во всех backend-проектах для маркетплейсов.

Согласованность данных между сервисами

Проблема

При высокой нагрузке возникали рассинхронизации между сервисом заказов и сервисом остатков. Клиенты оформляли заказы на товары, которых уже не было.

Решение

Реализовали паттерн Saga для распределённых транзакций. Добавили механизм резервирования остатков с TTL и автоматическим откатом.

Вывод

Консистентность данных важнее скорости. В маркетплейсах с множеством продавцов это критический аспект архитектуры.

Готовы получить такой же результат?

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