ОС может сообщать об использовании процессора в масштабе всей системы, по крайней мере, это относится к одному из моих VPS.
Попробуйте установить htop
и посмотреть, что происходит внутри вашего VPS, чтобы подтвердить или опровергнуть это.
Недавно я установил действительно дешевый VPS, главным образом, для целей резервного копирования, но я также хотел, чтобы он выполнял небольшие, незначительные задачи. Но поскольку я был слишком заинтересован, я хотел взглянуть на использование процессора и памяти, так как я получил (вероятно, часть) 1 ядро неизвестного процессора и 128 МБ оперативной памяти под управлением Ubuntu 16.04 LTS. Я создал cronjob, вызывающий PHP Script, который проверяет использование процессора и памяти, и если хотя бы один из них высок, он запишет информацию в файл. Я использую команды PHP systeminfo для проверки загрузки процессора и MEM, а затем использую это, чтобы получить больше информации о процессах, использующих большую часть процессора.
Но по некоторым причинам это выводит это:
27.05. 20:05:12 CPU:109% - RAM:72.11% ps: 1.0 6556 php ps: 0.5 6518 /usr/sbin/mysqld ps: 0.0 1 init 28.05. 00:02:43 CPU:288% - RAM:39.45% ps: 0.1 19968 /usr/sbin/mysqld ps: 0.0 1 init ps: 0.0 2 [kthreadd/6457] 28.05. 00:05:01 CPU:158% - RAM:49.24% ps: 0.1 20046 /usr/bin/python3 ps: 0.0 1 init ps: 0.0 2 [kthreadd/6457]
Итак, я получил дату и время, использование CPU и MEM PHP и ниже информацию из команды ps: загрузка процессора, PID и команда. Должен ли я умножить числа загрузки процессора на 100, чтобы получить%, или почему эти цифры так низки, когда очевидно, что процессор иногда загружен на 288%. Или это нормальное поведение для VPS и PHP измеряет реальную загрузку ЦП всей системы, в то время как ps показывает только нагрузку на мою часть ЦП или наоборот?
Может кто-нибудь объяснить, пожалуйста?
ОС может сообщать об использовании процессора в масштабе всей системы, по крайней мере, это относится к одному из моих VPS.
Попробуйте установить htop
и посмотреть, что происходит внутри вашего VPS, чтобы подтвердить или опровергнуть это.