Kaizen Gaming

Как Kaizen Gaming оптимизировала свою инфраструктуру с помощью Durable Objects от Cloudflare

Kaizen Gaming — одна из крупнейших и самых известных в мире компаний в области игровых технологий. Компания Kaizen, основанная в 2012 году в Афинах, Греция, ежегодно проводит 1 500 000 мероприятий и транслирует более 400 000 мероприятий на 19 рынках. Компания также является официальным спонсором Кубка Америки, «Лиги конференций УЕФА» и «Лиги Европы УЕФА».

Kaizen владеет Betano, брендом премиальных онлайн-ставок на спорт и игр, который использует проприетарные технологии для создания удобного интерфейса и увлекательных возможностей для ставок и казино для более чем 13 миллионов клиентов по всему миру.

Платформа Betano предоставляет обновления в режиме реального времени из потока данных live-ставок о спортивных результатах. Доставка этих обновлений во время крупных спортивных мероприятий может оказаться непростой задачей, поскольку сотни тысяч устройств одновременно получают доступ к приложениям Kaizen. Компания искала способы поддержки прямых трансляций с оптимальной эффективностью и масштабируемостью.

Проблема: неэффективная маршрутизация трафика и чрезмерные подключения

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

По мнению Костаса Стефанопулоса, главного инженера по надежности сайтов в Kaizen: «Если вы видите забитый гол и хотите сделать ставку, нельзя терять времени, поэтому все должно происходить в режиме реального времени». Это создает значительную нагрузку от трафика на наше программное обеспечение».

Соответствие этим ожиданиям представляло серьезную проблему при прежней инфраструктуре Kaizen. Чтобы доставлять данные в режиме реального времени глобальной клиентской базе, компания использовала собственный backend, построенный на Microsoft SignalR для обработки WebSocket-соединений.

Ключевой проблемой была эффективность и масштабируемость: каждое конечное устройство устанавливало выделенное постоянное соединение WebSocket с серверами-источниками Kaizen, расположенными в Европе. Когда происходило обновление игры — например, был забит гол, — одни и те же данные дублировались и отправлялись через океан сотням тысяч отдельных устройств.

Такая архитектура создала три критически важные проблемы:

  • Чрезмерная нагрузка и затраты: на пике необходимо было поддерживать более 600 000 одновременных подключений клиентов. Поскольку каждый пbackend-pod мог обрабатывать лишь около 2 000 подключений SignalR, Kaizen требовалось примерно 300 серверов только для этой функции . В результате получалась громоздкая и ресурсоемкая конфигурация.
  • Избыточная потребление пропускной способности: постоянная дублирующаяся передача данных приводила к значительной и дорогостоящей нагрузке на сеть. –
  • Высокие задержки и упущенный доход: маршрутизация глобального трафика (например, из Бразилии) обратно в Европу приводила к высоким задержкам, часто около одной секунды. В ставках на спорт скорость превыше всего. Если клиент пытается сделать ставку, опираясь на устаревшие данные о ходе игры, даже 10-секундная задержка может привести к отмене или отклонению ставки , что напрямую влияет на клиентский опыт и ключевые бизнес-показатели Kaizen.

Но для Kaizen альтернативы не было. «Нам нужно было быть готовыми к худшему», — пояснил Стефанопулос. «Представьте, что половина Бразилии решит войти в систему одновременно. Там нет места для автомасштабирования».

Решение: Cloudflare помогает Kaizen повысить эффективность и масштабироваться, чтобы соответствовать ожиданиям пользователей

Изначально Kaizen внедрила Cloudflare для нейтрализации DDoS-атак. Когда Kaizen искала решение проблем с подключением, компания обратилась к Cloudflare, чтобы найти эффективный способ разгрузить свои источники-серверы, оптимизировать доставку данных и значительно сократить расходы.

Сначала Kaizen развернула Cloudflare Workers и Durable Objects в качестве обратного прокси на периферии сети. Эта новая архитектура агрегирует клиентские подключения ближе к пользователю и устанавливает одно оптимизированное WebSocket-соединение от Cloudflare к европейскому backend, тем самым принципиально решая проблему разветвления.

Durable Objects решает эту проблему двумя ключевыми способами:

  1. Консолидация подключений: каждый Durable Object объединяет тысячи отдельных пользовательских подключений. Вместо ~600 000 соединений, приходящихся на источник Kaizen на пике, нагрузка теперь агрегируется только до ~1000 соединений . Durable Objects поглощает огромные пики трафика и снимает нагрузку по масштабированию с инфраструктуры Kaizen.
  2. Разветвление на периферии : каждый Durable Object действует как хаб по модели подписки. Если 10 000 пользователей подписаны на одну и ту же прямую трансляцию, Durable Object получает обновление с сервер-источника только один раз, а затем мгновенно распределяет обновление всем подписчикам из ближайшей к ним периферийной локации Cloudflare.

Как отметил Стефанопулос, эта новая периферийная архитектура является значительной победой.

«Durable Objects обрабатывают запросы ближе к конечному пользователю, поэтому сообщения пересекают океан реже, чем раньше, и затем распределяются ближе к клиентам».

Для Kaizen стабильность и масштабируемость системы являются основным преимуществом использования Cloudflare. Снижение нагрузки на внутреннюю инфраструктуру позволило им без каких-либо проблем справляться с огромными пиками трафика. Количество одновременных подключений, достигавших ~600 000 в часы пик, теперь агрегируется до ~1 000, обрабатываемых на их backend, — это значительное сокращение.

Решение также позволило сократить сетевые задержки, что в Kaizen назвали «счастливой случайностью». Для пользователей в Латинской Америке, подключающихся к европейским серверам, задержка сократилась с ~1 с до 800–900 мс, что помогло уменьшить количество отклоненных ставок.

Результат: стабильность системы, экономия затрат и принятые ставки

Для компании Kaizen переход на Cloudflare обеспечил не только технические достижения, но и прямые, измеримые преимущества для бизнеса, которые помогли оптимизировать стабильность, затраты и производительность.

Стабильность и масштабируемость системы

Самым непосредственным преимуществом для Kaizen стало обеспечение стабильности и масштабируемости системы. Объединив ~600 000 клиентских подключений, чтобы ~1000 попаданий в их серверную часть, они устранили риск пиков трафика , вызывающих нестабильность, и необходимость постоянного избыточного обеспечения ~300 внутренних серверов.

«Одно из наших главных достижений (помимо экономии пропускной способности) заключается в том, что при пиковых всплесках подключений нам не приходится беспокоиться о стабильности системы. Это реальная победа, потому что мы готовы к любым сценариям».

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

Решив проблему дублирования данных на периферии, Kaizen добилась значительного сокращения сетевого трафика и затрат.

В пиковые периоды требуемая пропускная способность интернет-канала была сокращена с ~50 Гбит/с до ~2–3 Гбит/с — более чем на 90  % (и более чем в два раза по сравнению с предыдущими показателями). Это также означало, что Kaizen избегала непрерывных и дорогостоящих обновлений маршрутизаторов и межсетевых экранов, поскольку компания быстро расширялась на множество новых рынков каждый год.

Ключевые показатели производительности и выручка

Решение обеспечило «счастливую случайность» в виде уменьшения сетевой задержки.

Для пользователей в Латинской Америке, подключающихся к европейским серверам, задержка сократилась с ~1 секунды до 800–900 мс . Это, казалось бы, небольшое улучшение в области периферийных вычислений оказывает глубокое влияние на основной бизнес компании: оно означает, что клиенты получают обновления в реальном времени достаточно быстро, чтобы делать ставки, прежде чем система автоматически отклонит их как устаревшие.

«Наша значительная победа заключается в том, что всякий раз, когда мы получаем пики подключений, нам не нужно беспокоиться о стабильности системы, — говорит Стефанопулос. — Это реальная победа, потому что мы готовы к любым сценариям».

Снизив нагрузку на серверы-источники, сократив затраты на пропускную способность и повысив долю успешно принятых live-ставок, Cloudflare Durable Objects помогла Kaizen получить конкурентное преимущество в динамичной индустрии ставок на спорт в реальном времени.

Взгляд в будущее

Kaizen работает с Cloudflare над встраиванием новых функций в Betano. Компания готова к росту и планирует расширять свое присутствие на новых рынках теперь, после решения изначальных проблем с эффективностью трафика и доставкой данных.

Они также могут добавлять дополнительные мероприятия на каждом рынке, поскольку их инфраструктура теперь лучше готова к обработке более высоких нагрузок без перегрузки инфраструктуры и внутренних ресурсов. Kaizen намерена и далее использовать периферийные вычисления и получать преимущества для бизнеса за счет перемещения вычислений и данных ближе к их конечным пользователям, и Cloudflare поддерживает их на каждом этапе.

Как отметил Стефанопулос: «Мы хотим извлекать выгоду из глобальной инфраструктуры Cloudflare, которая позволяет нам развертывать решения максимально близко к нашим клиентам».

Kaizen Gaming
Связанные практические примеры
Ключевые результаты
  • Сокращение количества подключений к источнику в 1000 раз

  • 200%-ное сокращение пропускной способности

  • Снижение задержки на 20% — с 1 секунды до 800 мс

Durable Objects реагируют ближе к конечному пользователю, поэтому сообщения перемещаются через океан реже, чем раньше, и затем они фактически распространяются ближе к клиентам.

Костас Стефанопулос
Ведущий инженер Kaizen

«Одно из наших главных достижений (помимо экономии пропускной способности) заключается в том, что при пиковых всплесках подключений нам не приходится беспокоиться о стабильности системы. Это реальная победа, потому что мы готовы к любым сценариям».

Костас Стефанопулос
Ведущий инженер Kaizen