почему htop метр показывает> 90%, в то время как таблица составляет 0,0%?

Серверы обычно создаются для высокой пропускной способности вместо высокой скорости отклика, таким образом, необходимо иметь это в виду при оценке скорости отклика системы сервера.

12
17.02.2012, 19:08
3 ответа

htop не знает, что это работает на виртуализированной среде уровня ядра (Dreamhost VPS использует технологию VServer). Это затем показывает использование ЦП для всех экземпляров ОС, совместно использующих то же ядро, не просто Ваш.

Взгляните к vtop вывод, который sho ws все процессы, совместно использующие центральные процессоры, не только тех в Вашем контейнере.

Если vtop не установлен, и это, вероятно, ожидается для коммерческого решения, поскольку нельзя было бы хотеть клиенту видеть, какие процессы выполняют других клиентов, нет никакого способа устранить проблему из Вашего контейнера, если исправление top источник для вычислений использования ЦП вместо того, чтобы получить его от статистики ядра.

Это могло бы сделать это путем подведения использования ЦП всех процессов, работающих в VServer, например:

ps aux | awk '
    {cpu+=$3; ram+=$6} 
    END {printf("cpu: %d%%, RAM: %.2f MiB\n",cpu,ram/1024) }'
6
27.01.2020, 19:56
  • 1
    +1 для объяснения; top отчеты так же htop на этой машине. Vtop, не протестированный как не установленный. Отмечание этого, как принято, потому что это отвечает "почему?", хотя это не обращается к неявному "и что может делаться с этим?", поскольку это было не высказано –  matt wilkie 22.03.2013, 19:49

Этот вид несоответствия обычно показателен из высокого использования процессора потоками ядра, которые не отображены в htop по умолчанию. Отобразить их, в htop перейдите в Setup, затем Display options, и затем снимите флажок Hide kernel threads. Это должно позволить Вам видеть поток (потоки), которые ответственны.

Можно также отключить это поведение путем установки hide_kernel_threads к 0 дюймам ~/.htoprc.

4
27.01.2020, 19:56
  • 1
    благодарит Chris. Я сделал это, но значения таблицы - все еще 0%. Возможно, это - что-то специфичное для выполнения в виртуальной машине? Хост является Виртуальным Частным Сервером (на Dreamhost.com). –  matt wilkie 17.02.2012, 23:37
  • 2
    Для меня это - более корректный ответ. У меня был процесс, который поднимал много ЦП от ядра, и это не обнаруживалось в процессах пространства пользователя. –  Patrick Chu 20.12.2016, 19:07

Попытайтесь запуститься htop с sudo. Вы должны базироваться доступ для наблюдения тех активных потоков в таблице.

1
27.01.2020, 19:56
  • 1
    , который я не знаю, как хорошо или не это работает над регулярными виртуализированными средами, если там такая вещь как регулярная, но не работает над dreamhost VPS. –  matt wilkie 22.03.2013, 19:47

Теги

Похожие вопросы