← Все кейсы
FoodTech / Platform FoodTech-платформа

Надёжный обмен данными между всеми системами

Платформа интеграций

Вызов

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

При прямой синхронной связи сбой в одном звене останавливал соседние. В часы пик — обед и ужин — пиковые нагрузки кратно превышали среднее значение, и система не выдерживала.

01 Сбой одного сервиса вызывал цепочку отказов в других
02 Пиковые нагрузки в часы работы ресторанов не поглощались — система деградировала
03 Нет видимости того, как данные движутся между сервисами

Что было сделано

Трёхуровневая система обмена данными: Kafka для потоков, RabbitMQ для задач, MQTT для терминалов — с полной наблюдаемостью через Istio.

Apache Kafka: надёжная шина данных

Kafka — высокопроизводительная система доставки сообщений, которая разрывает прямую зависимость между сервисами. Отправитель публикует событие и продолжает работу; получатель обрабатывает его в своём темпе. Развёрнут Kafka UI для мониторинга и диагностики потоков данных.

RabbitMQ: очереди для оперативного взаимодействия

Там, где нужна быстрая передача задач между сервисами с гарантией доставки, используется RabbitMQ. Кластер поддерживается в актуальном состоянии как в тестовых, так и в production-окружениях.

MQTT: протокол для сотен терминалов

Для взаимодействия с терминалами самообслуживания в ресторанах используется MQTT — лёгкий протокол, оптимизированный для большого числа одновременных подключений. Стресс-тестирование проведено с более чем 400 параллельными эмуляторами терминалов.

Istio Service Mesh

Service Mesh — инфраструктурный слой, который управляет всем сетевым взаимодействием между сервисами: шифрование, балансировка нагрузки и мгновенная видимость. Миграция с Ingress на Istio в staging дала командам полную карту зависимостей без изменения кода.

Apache KafkaRabbitMQMQTTIstioKubernetesZookeeper

Было / Стало

Before Прямые вызовы между сервисами — сбой одного тянет за собой другие
After Асинхронная шина данных — сервисы независимы друг от друга
Before Пиковая нагрузка ломала платформу
After Очереди сглаживают всплески, обработка продолжается в своём темпе
Before Нет наблюдаемости трафика между сервисами
After Полная карта взаимодействий и метрики через Istio
Before Неподтверждённая ёмкость под терминальные нагрузки
After Проверено на 400+ параллельных подключениях
Before Разные версии брокеров в тесте и production
After Единая актуальная версия во всех окружениях
Пиковая нагрузка в обед и ужин кратно превышала средние значения. Теперь очереди сглаживают всплески, а каждый сервис обрабатывает данные в своём темпе — без каскадных отказов.
Инженерная команда FoodTech-платформа

Лежит прод, теряются заказы?

Подключимся в течение часа. Договор — потом.

Связаться сейчас