Если другие виртуальные машины на том же физическом сервере активно используют сеть и CPU, обработка на нашем сервере нерегулярно запаздывает.
Почему Другие виртуальные машины на том же физическом сервере потребляют много ресурсов → Следствие Обработка пакетов на нашей виртуальной машине нерегулярно запаздывает → На экране Без явной причины время от времени появляется джиттер (неравномерность интервалов между пакетами) и микрофризы
Основной ответственный Команда инфраструктуры · Серверная инфраструктура · Совместно Внешние стороны · Внешние стороны
Команда инфраструктуры: задачи
Выделенные хосты, инстансы с гарантированной производительностью, инстанс с постоянным джиттером остановить и запустить снова, чтобы он переехал на другой хост.
Внешние стороны: задачи
Сообщить облачному провайдеру о проблемном хосте.
На графике
Случайные всплески · джиттер времени туда и обратно внутри ЦОД, %steal
Где смотреть
Непрерывно пинговать другой сервер в том же ЦОД и записывать джиттер времени туда и обратно, сравнить его вместе с %steal из mpstat с другими инстансами той же конфигурации
Подтверждает
Только у этого инстанса джиттер времени туда и обратно или %steal нерегулярно скачут, а у других инстансов той же конфигурации всё спокойно. После остановки и запуска с переездом на другой хост проблема пропадает
Опровергает
Если у всех инстансов той же конфигурации одинаковые скачки, хост ни при чём. Смотреть нагрузку на стороне игрового сервера или сетевой участок
Чем проверить
Инструменты инфраструктуры (игровой код не нужен)
Источники
How EC2 instance stop and start worksAWS Если инстанс остановить и снова запустить, в большинстве случаев он переезжает на новый хост (кроме выделенных хостов)
mpstat(1) — Linux manual pagesysstat %steal: доля времени, в течение которого этот виртуальный CPU вынужденно ждал, пока гипервизор выполнял другой виртуальный CPU