как получить использование ЦП для tomcat, работающего в контейнере докеров

Настройка моего приложения: установка 4 контейнеров докеров с помощью docker-compose: myapplication (tomcat, трикотажное приложение), kafka, postgres, zookeeper.

Мне нужно знать использование ЦП контейнера tomcat.

1, я использовал JavaMeloday для получения % System CPU 93.36, более подробной информации.

2, я использовал docker stats <docker id>, чтобы получить, что CPU % является 356% одновременно с % System CPU 93.36 от JavaMelody.

В моей машине 8 ядер. почему числа в 1 и 2 разные? Как их объяснить?

Спасибо


person BAE    schedule 28.02.2018    source источник


Ответы (1)


Как упоминалось в moby/moby issue 26711:

Здесь правильно 800%, что является стандартным обозначением для того, чтобы сказать, что 8 ядер используются на 100%.

Таким образом, 356% означает, что процессы контейнера докеров (а не только Java Tomcat) используют почти 4 из 8 ядер.

В отличие от Javamelody, используемой в «A Step Пошаговое руководство по мониторингу производительности Tomcat", которое отслеживает приложение Java через JMX и сообщает дополнительно: с сайта "Java — мониторинг загрузки процессора и системы многопоточного приложение через OperatingSystemMXBean", это значение является суммой для всех ядер).

Проблема в том, что статистика докеров и javamelody не отслеживают активность в одно и то же время и могут сообщать (и объединять) разные пики активности.

person VonC    schedule 28.02.2018
comment
Итак, % System CPU 93.36 означает 93,36% 8 ядер ИЛИ 93,36% ОДНОГО ядра в JavaMelody? - person BAE; 01.03.2018
comment
@BAE Из того, что я читал, все ядра. Я отредактировал ответ соответственно со ссылкой. - person VonC; 01.03.2018
comment
Спасибо. Я делаю некоторые тесты производительности на tomcat. можно ли доверять цифре (93,36%)? Сомневаюсь, почему он такой высокий. - person BAE; 01.03.2018
comment
@BAE Он постоянно остается высоким? - person VonC; 01.03.2018
comment
Нет, когда я начал использовать ab (верстак Apache) для тестирования. В таком случае кажется, что он надежный? - person BAE; 01.03.2018
comment
@BAE как снимок, он надежен. Но, как и для любого снимка, время меняется в зависимости от активности, измеренной для этого снимка. - person VonC; 01.03.2018
comment
Я все еще в замешательстве. 93,36% для приложения tomcat ИЛИ всех процессов, запущенных на моем компьютере? - person BAE; 01.03.2018
comment
@BAE, как описано в bmwieczorek.wordpress.com/2015/11/02/, системный ЦП означает для всей системы в диапазоне [0.0,1.0], где 0,0 означает, что все ЦП простаивали, 1,0 означает что все ЦП активно работали 100% наблюдаемого времени. - person VonC; 01.03.2018
comment
Меня смущает whole system. Вы имеете в виду, что это все процессы, запущенные на моем компьютере? - person BAE; 01.03.2018
comment
@BAE да, все машины. - person VonC; 01.03.2018