- Для PC
- Для Mac
- Для Linux
- ОС: Windows 7 SP1/8/10 (64bit)
- Процессор: 2,2 ГГц
- Оперативная память: 4 Гб
- Видеокарта с поддержкой DirectX версии 10.1: AMD Radeon HD 77XX / NVIDIA GeForce GTX 660. Минимальное поддерживаемое разрешение – 720p.
- Место на жестком диске: 17 Гб
- ОС: Windows 10/11 (64bit)
- Процессор: Intel Core i5 или Ryzen 5 3600 и лучше
- Оперативная память: 16 Гб
- Видеокарта с поддержкой DirectX версии 11 и выше: NVIDIA GeForce 1060 и выше, Radeon RX 570 и выше
- Место на жестком диске: 95 Гб
- Операционная система: Mac OS Big Sur 11.0
- Процессор: Core i5, минимум 2.2GHz (Intel Xeon не поддерживается)
- Оперативная память: 6 Гб
- Видеокарта: Intel Iris Pro 5200 (Mac) или аналогичная видеокарта AMD/Nvidia для Mac (минимальное поддерживаемое разрешение – 720p) с поддержкой Metal
- Место на жестком диске: 17 Гб
- Операционная система: Mac OS Big Sur 11.0
- Процессор: Intel Core i7 (Intel Xeon не поддерживается)
- Оперативная память: 8 Гб
- Видеокарта: Radeon Vega II и выше с поддержкой Metal
- Место на жестком диске: 95 Гб
- Операционная система: Современные дистрибутивы Linux 64bit
- Процессор: Dual-Core 2.4 ГГц
- Оперативная память: 4 Гб
- Видеокарта: NVIDIA GeForce 660 со свежими проприетарными драйверами (не старее 6 месяцев) / соответствующая серия AMD Radeon со свежими проприетарными драйверами (не старее 6 месяцев, минимальное поддерживаемое разрешение - 720p) с поддержкой Vulkan
- Место на жестком диске: 17 Гб
- Операционная система: Ubuntu 20.04 64bit
- Процессор: Intel Core i7
- Оперативная память: 16 Гб
- Видеокарта: NVIDIA GeForce 1060 со свежими проприетарными драйверами (не старее 6 месяцев) / Radeon RX 570 со свежими проприетарными драйверами (не старее 6 месяцев) с поддержкой Vulkan
- Место на жестком диске: 95 Гб
Как и другие клиент-серверные продукты, наша игра имеет довольно сложную и распределённую инфраструктуру, состоящую из множества различных серверов. Это серверы авторизации, серверы хранения пользовательских профилей, серверы, на которых непосредственно проходят бои, сервер сквадов, сервер голосовой связи. И всё это не одна машина, а десятки! Плюс сервер матчинга, также состоящий из множества физических машин входных шлюзов, являющихся прокси для устранения точек отказа, и сервера, который собственно собирает бои из вставших в очередь игроков.
Теперь немного подробнее о том, что произошло в эти выходные. Один из сервисов входных шлюзов был в работе 375 дней, при плановой перезагрузке на нём поднялась неправильно сконфигурированная версия, которая использовала только одно ядро (что мы выяснили только в воскресенье) и неправильно проксирующая IP-адреса. В первый момент нам показалось, что сервер не справляется с нагрузкой (возросшей от введения новой техники и страны и по причине внимания игроков к мажору), и мы решили как можно скорее нарастить его мощности, переехав на самые мощные из доступных (и самые дорогие) машины в Амазоне. Однако мгновенно это сделать невозможно и сам переезд занял некоторое время. Но даже после его завершения осталась проблема с неправильной конфигурацией (проксированием IP-адресов и однопоточностью), и сервер считал, что все пользователи, пришедшие через этот сервис, имеют один IP, не мог быстро их «найти» и тормозил. Приблизительно после полуночи по времени Москвы проблема с неправильным проксированием была найдена и через некоторое время устранена, и бои начали собираться. Ночью количество пользователей снижается, и даже то, что прокси работали в одно ядро, уже не мешало работе.
В воскресенье снова увеличилась нагрузка с ростом пользователей и боёв, и мы наконец увидели вторую ошибку конфигурации, а днём починили ошибочную «одноядерность» прокси путём плавного выведения неверно сконфигурированных машин и плавным вводом новых (чтобы не отказывать в сервисе уже играющим пользователям). Этот процесс занял ещё некоторое время. Тут следует заметить, что на самом деле мощности хватало многократно и до ввода самых мощных серверов: это одного ядра не очень хватало, а их там было много. А после апгрейда мы утилизировали только около 6% доступной вычислительной мощности (т.е. 20-кратный запас по мощности от пика).
Выводы
По результатам инцидента были сделаны выводы и запланированы улучшения как оперирования, так и самого кода матчинга. Во-первых, мы планируем проверять отказоустойчивость сервиса, перезапуская все серверы со слишком большим аптаймом (используя опыт крупных стриминговых сервисов, например, Netflix, который применяет специальных ботов, проверяющих время работы отдельных серверов и принудительно перезапускающих их при превышении времени работы выше порогового).
Также уже введены способы улучшения кода матчинга, которые позволят обеспечить приемлемый уровень работы игры даже при слишком высокой нагрузке: постановка в очередь может проходить дольше, но сервис не перестает отвечать игрокам, сохраняя работоспособность.
Кроме того, увеличение числа стран и возможных игровых конфигураций боёв достигло больших значений, требующих алгоритмических оптимизаций (пытаться найти из всех возможных комбинаций всех игроков и стран — это квадратичная сложность алгоритма), и необходимо сделать оптимизации, и находить может не абсолютно идеальный матч из возможных в очереди, но просто достаточно хороший.
И ещё одна хорошая новость. Зайдите в игру с 4 ноября (14:00 МСК) по 8 ноября (14:00) и получите Премиум усилитель +30% опыта на 5 боёв.
Комментарии (132)
Также напоминаем о том, что активные премиум-аккаунты уже были продлены после проявления серверных проблем (на выходных). А при входе в игру с 4 ноября (14:00 МСК) до 8 ноября (14:00) мы подарим каждому игроку Премиум усилитель +30% опыта на 5 боёв.
а теперь еще из боя выкидывает и штраф по времени накладывает, норм ребят
Гайдзины, благодарю вас за открытость перед аудиторией. Больше никаких шуток про серверы на 775 сокете от меня. Так держать! И касательно "Не идеальных, но хороших боев" - главное, чтоб не было больше чем +1 БР от набора игрока в бою и на том спасибо.
А я никогда и не шутил про 775 сокет - у меня в таких случаях всегда фигурировали хомячки, крутящие в серверной колесо, за счёт чего всё и работает. И я бы ещё поспорил, кто из нас ближе к правде!
И если можно: в ночное время правда меньше игроков, поэтому попробуйте запустить хотя б на месяц экспериментальный алгоритм матчинга в ночное время, где команды меньше 16х16 не попадают на большие карты, вроде Красных Песков или Полёу Полей aka Поля Польши, Фульда и вот это вот всё. Заранее спасибо, если хотя б прочтёте.
Да починили, но похоже не до конца. В игру заходишь нажимаешь в бой и через 10 секунд и выскакивает сообщение "Сервер перегружен. Повторите запрос позже". Два боя играешь и снова здрасьте, эта ошибка. Снова в бой жмешь и ждешь что бы снова она не появилась.
30 % усилитель - вот это щедрость я в шоке!
Ничего вы не исправили!!!
Молодцы ,что сказать! Слаженность действий - даёт надлежащий результат!
Ну надо же! И проблему нашли, и рассказали о ней коротко. Тут снимаю шляпу. Спасибо! А то обычно всё молчком и плохое и хорошее и бесполезное...
спасибо за информацию,круто что решили написать и поделиться о том что случилось!)
Молодцы. Правильно сделали что всё рассказали и объяснили.Так держать.
как была проблема с входом так и осталось, время ожидания сервера истекло. 3 три дня сраных не могу по человечески поиграть. и вы говорите усилитель на 30 процентов? вы совсем там п,,,,,,,,, у меня премиум 3 дня в задницу улетел а вы 30 проц, да уж блЮЮЮЮ
Отправить жалобу