Самые безумные цифры за 17 лет в Blizzard – разработчики WoW Forever объяснили падение серверов беты
Бета-тест WoW: Forever стартовал и почти сразу лёг под наплывом игроков. World of Warcraft работает уже 22 года, но даже с таким опытом Blizzard не смогла предсказать масштаб интереса. Разработчики признались, что сами оказались удивлены количеством желающих попасть внутрь.
Старший гейм-дизайнер Джош Гринфилд поделился впечатлениями в соцсетях, отметив, что подобных показателей не видел за всю карьеру в студии.
Блин, прошлой ночью было тяжело уснуть, я был так взволнован. Бета была... безумной. Самые безумные цифры, которые я видел за 17 лет работы в Blizzard и почти 8 лет на classic. У нас тут получилось что-то действительно особенное.
Старший продюсер Том Эллис опубликовал подробный технический разбор того, что пошло не так в первые часы работы беты.
Главная причина в том, что тестовая инфраструктура изначально не рассчитана на подобные нагрузки. Обычно бета-версии дополнений WoW не собирают такой аудитории, и под них выделяют скромные мощности.
Это далеко, далеко, далеко, далеко, далеко, далеко не продакшен-стек. Беты WoW обычно не сильно двигают стрелку, так что эта среда просто не настолько мощная.
По словам Эллиса, тестовое окружение использовало всего один региональный realm, и через эту единственную точку подключения пришлось прогонять весь поток игроков. Расчёты на серверах начали сбоить, из-за чего пользователей выбрасывало из игры сразу после долгого ожидания в очереди авторизации.
Найти узкое место удалось только спустя примерно полчаса, так как ни игровые сервисы, ни Battle.net не показывали заметной нагрузки.
Мы все осознали, что нам нужно больше логирования и уведомлений, когда эта система срабатывает, но это первый раз, когда кто-либо видел её срабатывание без очевидной проблемы с CPU в довесок. 20 лет, и всегда что-то новое.
Вторая проблема касалась задержек при взаимодействии с миром. Игроки жаловались на многосекундные паузы при сборе лута, принятии заданий и других действиях, которые требуют обращения к серверу.
Инженеры баз данных Oracle вручную провели анализ всех таблиц и настроили автоматические задачи, чтобы повторять процедуру регулярно, но стандартной частоты не хватало под такой трафик. После изменения настроек производительность базы, как выразился Эллис, выправилась мгновенно.
Отдельной головной болью стали перезапуски серверов. Спустя несколько часов после старта команда заметила, что пулы WORLD, отвечающие за саму симуляцию игрового мира, перегреваются по процессору и почти исчерпали доступную память. Причиной оказались пустые карты, которые не выгружались корректно и постепенно забивали ресурсы.
Через несколько часов мы заметили, что наши пулы WORLD, которые обслуживают, ну, ту самую симуляцию игры, в которую вы играете, безумно грелись по CPU и почти исчерпали память.
Исправление нашли быстро, однако для его применения потребовалась перезагрузка серверов. Заодно Blizzard воспользовалась паузой, чтобы добавить дополнительные миры и расширить региональный сервис ради стабильности. После этих мер бета заработала в штатном режиме.
Подобные сценарии повторяются в индустрии онлайн-игр из года в год, и разработчики крупных сервисов не раз говорили, что полностью подготовиться к старту попросту невозможно.
Разница в том, что реакция стала заметно быстрее, чем раньше. Достаточно вспомнить запуск Diablo 3, когда игроки не могли нормально зайти в игру неделями.
- Инструменты создания домов в World of Warcraft настолько хороши, что разработчики мечтают делать с ними квесты
- Blizzard готова снять ограничение на количество домов в World of Warcraft
- В World of Warcraft появится PvP-режим Prop Hunt, в котором вы сможете стать табуреткой