Рейтинг:2

Всплески на softirqs RCU отслеживаются с помощью NetData в контейнере proxmox

флаг cn

У меня есть сервер со следующими характеристиками: https://www.soyoustart.com/it/offerte/1801sysgame05.xml

Процессор Intel i7-4790K

БАРАН 32 ГБ DDR3 1333 МГц

Трафик Неограниченный Анти-DDoS Включено

Диски 1x240 ГБ SSD

Пропускная способность 250 Мбит/с

Я установил дистрибутив Proxmox Linux, который запускает контейнер на основе сервера Ubuntu для управления игровым TCP-сервером реального времени, написанным на C++, который на данный момент достиг около 1000 онлайн-пользователей, и мы собираемся удвоить текущее население в ближайшее время. .

Проблема в том, что мы сталкиваемся со странным «узким местом» в производительности, как только количество онлайн-пользователей достигает ~850. Как только он возвращается к ~800 или меньше, узкое место исчезает. Что на практике происходит, так это то, что игрокам приходится ждать около 30 секунд, чтобы подключиться к серверу, в то время как уже подключенные игроки не испытывают никаких проблем (нет задержек, зависаний и т. д.). Это похоже на перегрузку сети, лимит ограничения или что-то подобное, что запрещает дальнейшие подключения к тому же процессу и создает нагрузку на наш процессор (как вы можете видеть на скриншотах ниже).

Здесь я собрал несколько графиков из нашего NetData, где я заметил ту же самую «схему». программные прерывания RCU имеет особое значение, я думаю, но я не знаю, что именно это означает.

программные прерывания RCU: изображение

загрузка процессора/нагрузка: изображение

частота процессора изображение

температура процессора

изображение

Я не считаю, что виноват сам наш процессор, но, как сказано выше, похоже, что-то связано с ограничением процесса или чем-то подобным.

Вы хоть представляете, что происходит?

ОБНОВИТЬ:

другой связанный график

изображение

Michael Hampton avatar
флаг cz
Очевидно, что главным подозреваемым является само программное обеспечение игрового сервера. Вы должны проверить его журналы за этот период времени для любых возможных подсказок.
флаг cn
К сожалению, в логах нет ничего подозрительного
Рейтинг:0
флаг cn

Я решил эту проблему, увеличив ulimit

В моем конкретном случае проблема заключалась в том, что ulimit должен быть увеличен (как жесткий, так и программный) и постоянно настроен внутри папки /etc/ как для хоста, так и для контейнера lxc.

Кроме того, я изменил свой контейнер на привилегированный, но я не уверен, что он действительно нужен, мог бы быть способ исправить это и для привилегированного контейнера, но я не смог этого добиться.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.