Как уменьшить сетевую задержку для 30 тысяч геймеров: опыт EXBO
Изучаем, как компания EXBO обеспечила комфортный геймплей для пользователей благодаря выделенным серверам Selectel с гибкой конфигурацией и защитой от DDoS-атак.
Задачи:
- Обеспечить быструю обработку игровых событий
- Гарантировать работоспособность инфраструктуры в периоды пиковых нагрузок
- Защитить игровые серверы от DDoS-атак
Продукты и услуги Selectel:
О компании
Компания EXBO начала работу в 2013 году как команда энтузиастов, стремившихся создать глобальный мод по мотивам вселенной S.T.A.L.K.E.R. для игры Minecraft. В 2014 году первые геймеры попали на игровой сервер и оценили результат работы EXBO, который с тех пор вырос в STALCRAFT — самостоятельную игру на собственном движке.
STALCRAFT развивался с нуля без каких-либо инвестиций, поэтому ни о каких собственных IT-мощностях на старте речи не было. Команда EXBO начала с аренды одного выделенного сервера. Постепенно, по мере развития игры и игрового сообщества, потребовалась более мощная инфраструктура. Представители EXBO изучали российский рынок в поисках надежного провайдера выделенных серверов с большим ассортиментом оборудования и защитой от DDoS-атак. В 2018 году выбор пал на Selectel.
Вызовы и решения
- Уменьшить сетевую задержку для игроков из РФ до 50 мс и менее. Предоставили в аренду готовые выделенные серверы в конфигурациях, подходящих для быстрой обработки игровых событий и пользовательского трафика.
- Обеспечить возможность масштабирования вычислительных мощностей в период пиковых нагрузок. На период прогнозируемых пиковых нагрузок предоставляются дополнительные выделенные серверы в готовых конфигурациях.
- Защитить игровые серверы от DDoS-атак. Обеспечили удобную интеграцию с сервисом DDoS-Guard для защиты на уровне L4.
Почему выбрали Selectel
- Репутация на рынке и большой выбор оборудования
- Быстрое изменение конфигураций серверов в пиковые нагрузки
- Надежная защита от DDoS-атак на уровне L4
Уменьшить сетевую задержку
В онлайн-шутерах и MMORPG комфортное значение сетевой задержки — менее 50 миллисекунд. Около 80% пользователей STALCRAFT находятся в европейской части России и играют именно с таким пингом. Для игроков из Сибири или Дальнего Востока, которые физически находятся дальше от серверов, задержка может быть больше. А хоститься ближе к ним не позволяет геймдизайн STALCRAFT.
Дело в том, что матчмейкинг (подбор игроков) строится на основе внутриигрового уровня пользователей, используемых персонажей и так далее. Таким образом, начинающие и опытные игроки отправляются в разные копии одной локации и не встречаются друг с другом в одной игровой сессии.
Если к правилам матчмейкинга добавить географический фактор, пользователи автоматически будут подключаться к ближайшему серверу, а их сетевая задержка будет минимальной. Однако за пределами европейской части России находится лишь 20% пользователей STALCRAFT — если они будут играть только на своем сервере, ожидание игроков подходящего уровня может длиться слишком долго.
Сегодня у компании EXBO четыре локации для размещения игровых серверов: Россия, Европа, Северная Америка и Сингапур. Каждый сервер содержит множество внутриигровых инстансов (копий игровых локаций), вмещающих до 150 человек. Однако в рамках геймдизайна STALCRAFT на одной копии игровой локации находятся около 40 игроков. Благодаря запасу серверы могут выдержать внезапный наплыв пользователей.
Сетевая задержка или пинг — время, необходимое для передачи данных от игрока на игровой сервер и обратно. Другими словами, это время от нажатия на кнопку до совершения соответствующего действия в игре и отображения результатов на мониторе пользователя. Это особенно важный показатель для большинства онлайн-игр, подразумевающих противостояние реальных игроков друг другу. Длительность сетевой задержки зависит от скорости интернет-соединения, производительности игровых серверов и расстояния между ними и пользователем.
Решение
Скорость интернет-соединения игроков и их расстояние от серверов — факторы, на которые невозможно повлиять. Поэтому для уменьшения сетевой задержки Selectel предоставил в аренду готовые выделенные серверы в конфигурациях, подходящих для быстрой обработки игровых событий и пользовательского трафика. При этом у компании EXBO всегда есть выбор, какое именно оборудование использовать разные периоды, подбирая конфигурации под текущие нагрузки.
Быстро менять конфигурации серверов
Каждый день на игровые серверы STALCRAFT заходит около 50 000 уникальных пользователей. В пиковые периоды, например во время внутриигровых ивентов, этот показатель увеличивается до 100 000. При этом в игре одновременно находится от 10 000 до 30 000 человек.
Внутриигровые ивенты проходят по расписанию четыре раза в год. Поэтому рост нагрузки до пиковых значений предсказуем. Есть и прогнозируемый рост пользовательской активности в течение недели. Например, наблюдается стабильное увеличение количества игроков во время клановых битв.
Решение
Поскольку резкий рост нагрузки можно спрогнозировать, у компании EXBO есть возможность заранее заказать готовые конфигурации выделенных серверов. Это можно сделать в любой момент — и инженеры Selectel предоставят и подготовят к работе оборудование.
Компании останется только запустить скрипт в Ansible и залить на сервер нужные файлы — обычно это занимает не более десяти минут. Кроме того, готовые выделенные серверы при долгосрочной аренде обходятся дешевле облачных вариантов. Это важно, если аренда вычислительных ресурсов — основная статья расходов.
Возможность быстрого изменения конфигураций в периоды пиковых нагрузок стала еще одним преимуществом Selectel. Так, чтобы выдержать активность игроков во время новогоднего ивента, компания EXBO увеличила арендованные мощности серверов до 4,5 ТБ ОЗУ и 800 процессорных ядер.
Компания EXBO также арендует централизованный монолитный бэкенд-сервер. Для него Selectel обеспечивает возможности вертикального масштабирования. На этом сервере хранится база данных с информацией об игроках, он же синхронизирует сотни запущенных серверов.
Защитить серверы от DDoS-атак
Игровые серверы часто подвергаются DDoS-атакам. Так, в январе 2023 года суммарное число атак на игровые онлайн-сервисы в России выросло на 53% по сравнению с январем 2022, а максимальная мощность DDoS — на 48%.
Главные неприятности для геймеров во время таких атак — нестабильное соединение с игрой и постоянные «вылеты». Игровые компании же рискуют своей репутацией и бюджетом.
Интерес злоумышленников к игровой индустрии стал для EXBO поводом оценить уровень защищенности, который предлагает провайдер. Для компании важна защита на уровне L4, чтобы хактивисты не могли перегрузить серверы фиктивными запросами на подключение и испортить игровой процесс.
Решение
Selectel предложил удобную интеграцию с недорогим и стабильным сервисом DDoS-Guard, который обеспечивает L4-защиту. Учитывая огромные объемы трафика на выделенных серверах, аналогичные продукты могли обойтись дороже.
Результаты
-
50
миллисекунд — максимальная сетевая задержка для 80% игроков STALCRAFT
-
30
тысяч пользователей одновременно находится на игровых серверах
-
4,5
ТБ ОЗУ необходимо в период пиковых нагрузок
Сегодня Selectel полностью закрывает потребность компании EXBO в производительных выделенных серверах на российском рынке. Вычислительные мощности обеспечивают комфортную сетевую задержку для 80% пользователей, а широкий ассортимент оборудования позволяет оперативно изменять конфигурации на период пиковых нагрузок. При этом вся IT-инфраструктура надежно защищена от DDoS-атак.