Дев блог → Телеметрия на Tranquility

Все дети любят хвастаться своими игрушками. Видимо, я еще не вырос ― поэтому мне очень хочется похвастаться новой системой для анализа быстродействия, недавно установленной на сервере Tranquility. Мы используем ее в ходе масштабных битв и других ситуаций, создающих большую нагрузку на сервер, чтобы узнать, на что именно расходуются системные ресурсы. Около месяца назад я записал дома небольшой видеоролик, которым хочу поделиться с вами. Встречайте: телеметрия на Tranquility.

Перевод записи: Всем привет! Я CCP Veritas из команды Gridlock; сегодня у меня выдалась свободная минутка, и я хочу показать вам новую аналитическую систему на сервере Tranquility. Мы уже упоминали о ней раньше и даже показывали несколько скриншотов, но они не дают полного представления ― лучше один раз увидеть. В ходе последнего визита Совета игроков мы спросили их: «Хотите посмотреть на систему телеметрии, о которой мы рассказывали?» Сначала они равнодушно ответили: «Ну да, можно…», но когда они ее увидели, они просто обалдели. Надеюсь, вам она тоже понравится. Итак, давайте посмотрим …

Вот данные, соответствующие примерно десяти секундам боя, происходившего 25 мая в системе 3G-LHB, в котором принимало участие примерно 1150 человек. На экране показывается, чем именно был занят сервер в это время. Первое, на что я хочу обратить внимание ― высокие пики на графике. Это так называемый «тик» Destiny ― обработка игровой физики. Как можно видеть, она занимает довольно много времени. Давайте посмотрим на один из таких пиков ― как можно видеть, здесь показано примерно 350 миллисекунд. Из них мы тратим… нет, это не то… посмотрим сюда… тут можно видеть другие тики. Это значит, что узел ― «нода» ― не был выделен специально под этот бой; на нем обрабатываются и другие звездные системы. Но посмотрим на этот кусок. Здесь происходит несколько процессов одновременно; первый из них ― сбор данных для отправки игровым клиентам. Второй этап ― собственно отправка. То есть мы собираем информацию о происходящем, сообщаем ее игрокам и затем какое-то время занимаемся обсчетом физики. Именно так и выглядит стандартный тик системы Destiny.

Посмотрим сюда. Этот процесс длится 660 миллисекунд ― можно видеть, что отправка данных и обсчет физики занимают столько же времени, как и в остальных случаях, но сбор данных затянулся. Исходя из этой информации, мы можем понять, какие процессы масштабируются хорошо, а какие ― не очень. Пока у нас не появился этот инструмент, мы могли наблюдать лишь всю картину в целом. Мы знали, что обработка первой части в среднем занимает 200 миллисекунд, но не знали, при каких обстоятельствах это время увеличивалось, а при каких ― уменьшалось. Именно это и позволяет нам делать новая система. Мы также можем очень глубоко залезать в «недра» сервера. Возьмем любой процесс наугад. Ага, это сообщение от игрового клиента, вызывающее функцию «варп к чему-то». Обычно эта команда не занимает 335 миллисекунд, так что посмотрим повнимательнее. Как можно видеть, она выполняется достаточно регулярно. Вот объекты и значения атрибутов… Скорее всего ― исходя из того, что я знаю об этой функции ― это команда флоту; 300 миллисекунд уходит на то, чтобы опросить все входящие в его состав корабли, убедиться, что они выполняют команду и установить их скорость варпа. Именно этому и соответствует вот это значение атрибута. При выполнении этой команды флотом варп происходит со скоростью самого медленного корабля во флоте. Поэтому сначала необходимо запросить скорость варпа каждого корабля ― и именно ее выполнение занимает столько времени. В данном случае это не так страшно ― флоты совершают этот маневр не так часто, и мы можем себе позволить тратить, грубо говоря, 300 миллисекунд раз в пять минут. Но это хороший пример того, на что способна система телеметрии. Она работает на сервере Tranquility уже больше месяца; до этого мы постоянно использовали ее в ходе массового тестирования, но работать с ней в «живой» обстановке куда интереснее. Поэтому, ПОЖАЛУЙСТА, устройте бой помасштабнее! И не забудьте использовать систему уведомления о больших битвах, чтобы я знал о нем и мог получить эти данные (о, эти сладкие данные!) в ходе вашего сражения. Надеюсь, информация из этого видеоролика была вам интересна. Если у вас есть вопросы ― я буду рад на них ответить. Удачи!

[#] 15.08.2011 @ 18:50 by belkasuper
+ 0 -
[Cloak engage]

Написать комментарий
 
EVE Online and the EVE logo are the registered trademarks of CCP hf. All rights are reserved worldwide. All other trademarks are the property of their respective owners. EVE Online, the EVE logo, EVE and all associated logos and designs are the intellectual property of CCP hf. All artwork, screenshots, characters, vehicles, storylines, world facts or other recognizable features of the intellectual property relating to these trademarks are likewise the intellectual property of CCP hf. CCP hf. has granted permission to EVE-RU to use EVE Online and all associated logos and designs for promotional and information purposes on its website but does not endorse, and is not in any way affiliated with, EVE-RU. CCP is in no way responsible for the content on or functioning of this website, nor can it be liable for any damage arising from the use of this website.