2012-01-12 3 views
2

У нас есть сервер JBOSS, на котором установлена ​​Axis 1.1. Мы используем JMeter для проверки производительности сервера, который использует 300 потоков для перекачки запросов WebService. Использование центрального процессора на всех 4 процессорах достигает 60-70%. Поэтому мы подумали, что проблема будет в нашем коде, поэтому отключить весь код, просто вернув обратно из первой функции. Но использование кода по-прежнему остается неизменным после модификации кода.Высокое использование ЦП на сервере JBOSS

+0

Вам действительно нужно указать, какую версию JBoss вы используете. Имеются версии от 4.0 до 7.1 в активном использовании, а основные выпуски все очень разные. –

ответ

2

Скорее всего, это сборщик мусора, который работает слишком часто. Добавьте следующие параметры к JVM и анализировать результаты:

-XX:+PrintGCDetails 
-XX:+PrintGCTimeStamps 
-Xloggc:gc.log 

Вы могли бы также рассмотреть -XX:+PrintHeapAtGC для получения более подробной информации. Будет довольно легко проанализировать, сколько времени JVM проводит внутри сборщика мусора.

Если GC не является проблемой, возможно, вам потребуется подключить некоторый профилировщик, чтобы найти горячие точки. Однако тот факт, что комментирование кода не снижает нагрузку на процессор, предполагает сборщик мусора.

Смежные вопросы