Ответ 1
Данные, предоставляемые операционной системой, часто недостаточны или вводят в заблуждение в виртуализированных средах, таких как Amazon EC2, а процентная доля зависит от вашего экземпляра тип и базовое использование ядра процессора (которое обычно не соответствует виртуализированному оборудованию, которое вы представляете из гипервизора), среди прочего - то, что вы видите, скорее всего, вызвано соответствующим временем кражи процессора, как показано в большинстве связанных с Unix/В настоящее время инструменты мониторинга Linux (но не в Windows, к сожалению, см. Мой вопрос Есть ли эквивалент Windows для Unix "время краха процессора" ? для получения дополнительной информации об этой проблеме) - см. например столбцы% steal или st в sar
или top
:
st - Время кражи
Количество CPU, "украденного" с этой виртуальной машины гипервизором для других задач (например, запуск другого виртуального машина).
Сообщение в блоге Мониторинг EC2: случай похищенного процессора обеспечивает приятное исследование и иллюстрации к этой теме:
Когда верхняя команда отображает 40% загрузки процессора, но CloudWatch говорит, что сервер превышен на 100% - с какой стороны вы берете? Ответ простой (CloudWatch верен, верх не является) [...]
Время кражи процессора особенно распространено для экземпляра экземпляра EC2 t1.micro, который вы используете, который может сильно затухать по определению (обычно ~ 97% времени кражи!), см. Micro Instances для подробного объяснения и иллюстрации концепции - в частности, раздел Когда экземпляр использует свои выделенные ресурсы:
Мы ожидаем, что ваше приложение будет потреблять только определенное количество CPU ресурсов за определенный промежуток времени. Если приложение потребляет больше, чем ваш экземпляр выделил ресурсы процессора, мы временно ограничиваем так что он работает на низком уровне процессора. Если ваш экземпляр продолжается чтобы использовать все выделенные ресурсы, его производительность ухудшится. Мы будет увеличивать время, когда мы ограничиваем его уровень ЦП, тем самым увеличивая до того, как экземпляр разрешит снова всплывать. [акцент мой]
Соответственно, вы могли бы перерасти устойчивый профиль использования процессора для микроуровней и либо нужно настроить свою рабочую нагрузку, либо переключиться на другой тип экземпляра.