Здравствуйте, pagrus, Вы писали:
P>Ну например.
P>Используя профайлер вы находите, какие именно вызовы съёдают большую часть времени. Т.е. найдите сервлетный service() метод, посмотрите дерево вызовов под ним, что сколько времени заняло. Спускайтесь по дереву вызовов до классов JDK. Сравните это с результатом профайлинга на WinXP. Очень вероятно что тут же найдёте узкое место и поймёте, в приложении ли оно.
P>Если проблема не видна — посмотрите выше service(), возможно проблема в самом tomcat.
Профайлером конечно не смотрел, но логгирование показывает что замедление на разных вызовах пропорциональное, как будто тактовая частота процессора меньше в 3 раза.
P>Кстати посоветуйте клиенту убедиться, что сервер имеет достаточно свободной физической памяти и не свопится.
Физической памяти полно свободной. Вот что показывает top для процесса томката:
CPU0 : 0.0% us, 0.0% sy, 0.0% ni, 100.0% id, 0.0% wa, 0.0% hi, 0.0% si
CPU1 : 0.0% us, 0.0% sy, 0.0% ni, 100.0% id, 0.0% wa, 0.0% hi, 0.0% si
CPU2 : 0.0% us, 0.0% sy, 0.0% ni, 100.0% id, 0.0% wa, 0.0% hi, 0.0% si
CPU3 : 0.0% us, 0.0% sy, 0.0% ni, 100.0% id, 0.0% wa, 0.0% hi, 0.0% si
Mem: 2578660K total, 1693768K used, 884892K free, 205176K buffers
Swap: 5156824K total, 0K used, 5156824K free, 1210516K cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
20982 user 25 0 1227M 156M 7536 S 0.0 6.2 0:12.43 java
P>Также они могут попробовать включить/выключить APR для tomcat и последить за результатами.
Включал. Существенной разницы не заметил.