SaaS Kafka · K8s · TimescaleDB

CryptoAnalytics SaaS

Аналитическая платформа с real-time дашбордами

Аналитическая платформа
180 мс
медиана доставки
500+
одновременно
2.3 ТБ
данных в TimescaleDB
< 1 сек
срабатывание алерта

О проекте

Клиент — стартап, создающий инструменты аналитики для криптотрейдеров. Продукт: веб-платформа с агрегированными рыночными данными, настраиваемыми дашбордами и системой алертов.

Основной технический вызов: платформа должна показывать данные в реальном времени сотням пользователей одновременно, не создавая сотни отдельных подключений к биржам.

Технические требования

Архитектура

Ключевое решение: разделение слоя сбора данных и слоя доставки пользователям.

Data ingestion layer (Go): один модуль подключается к биржам. Один WebSocket на биржу — а не по одному на каждого пользователя. Собранные данные публикуются в Kafka.

Stream processing (Go + Apache Kafka): Kafka агрегирует потоки от всех бирж, обеспечивает надёжную доставку и буферизацию.

Delivery layer (Node.js + WebSocket): получает обработанные данные из Kafka и рассылает подписанным пользователям. Каждый пользователь подписывается только на видимые виджеты.

Frontend (Next.js + React): SSR для быстрой загрузки, WebSocket для real-time, Recharts для графиков.

База данных: PostgreSQL + TimescaleDB для временных рядов. Запросы к истории за год — секунды.

Инфраструктура: Kubernetes на AWS. Auto-scaling delivery layer при росте нагрузки.

Решение проблемы масштабирования

Реализовали систему subscription management: delivery layer знает, кто смотрит на что. При получении события из Kafka — рассылаем только подписанным на этот символ. Пользователь на вкладке с ETH не получает трафик BTC.

Алерт-система

Движок правил обрабатывает пользовательские условия против потока данных. Правила компилируются в оптимизированные предикаты и группируются по символу для batch-проверки. При срабатывании — уведомление в браузере, Email, Telegram.

Результат

Строите аналитическую платформу? Опишите проект — обсудим архитектуру.
Все кейсы Обсудить похожий проект