Спорт и фитнес

Tennis.ru App

Tennis.ru App — 1

Высоконагруженная мобильная экосистема для крупного спортивного комплекса, обрабатывающая миллионы транзакций ежемесячно с банковской надёжностью. Два приложения под одним брендом: бронирование теннисных кортов и управление абонементами в тренажёрный зал — на единой архитектуре, платёжной системе и серверной инфраструктуре.

Бронирование и платежи

Доступность кортов в реальном времени с мгновенным бронированием и интегрированной обработкой платежей. Приложение для зала управляет месячными абонементами с автоматическим продлением и контролем доступа. Обе системы выдерживают пиковые нагрузки, сохраняя время отклика менее секунды и транзакционную целостность.

Конкурентный доступ и кэширование

Движок бронирования использует PostgreSQL Row Level Locking для предотвращения двойных бронирований при конкурентном доступе. DragonflyDB служит кэширующим слоем, обеспечивая Redis-совместимое in-memory кэширование.

Архитектура

Построен на Capacitor 6 для нативного мобильного развёртывания, с Bun/ElysiaJS на бэкенде. Фронтенд использует React/Vite для быстрого отзывчивого интерфейса, а PostgreSQL с Drizzle ORM обеспечивает типобезопасные операции с базой данных.

Ключевые особенности

  • Два приложения, одна платформа — бронирование кортов + абонементы в зал на общей инфраструктуре
  • Row Level Locking — конкурентный доступ на PostgreSQL без двойных бронирований
  • Кэширование DragonflyDB — миллисекундное чтение расписаний и доступности
  • Система личного кабинета — покупки, бронирование, статистика, абонементы
  • Нативное мобильное приложение — Capacitor 6 для iOS и Android
  • Готовность к высоким нагрузкам — стабильная работа в пиковые периоды бронирования