пятница, 30 марта 2012 г.

Java-профилировщик

Для ВМ Java существует такая категория программ, как "профилировщики".
Они предназначены для наблюдением за ресурсами ВМ.
Есть профилировщики сторонних разработчиков, например, YourKit Java Profiler (http://www.yourkit.com/download/), но есть и "родной" в пакете JDK:
jvisualvm
jconsole
Для возможности удаленного подключения или подключения к JVM на Linux нужно добавлять параметры:
-Dcom.sun.management.jmxremote.port
-Dcom.sun.management.jmxremote.authenticate
-Dcom.sun.management.jmxremote.ssl
Например, для подключения по порту 1099 без SSL и без авторизации:
-Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false


Примечание:
при попытке удаленного подключения наткнулся на проблему: jconsole не хотела подключаться сообщая об ошибке в логе (чтобы лог jconsole был виден нужно запустить с ключом:
jconsole -debug
):
«
java.rmi.UnknownHostException: Unknown host: localhost.localdomain; nested exception is:
java.net.UnknownHostException: localhost.localdomain
»
Помогает запуск java-приложения с параметром:
-Djava.rmi.server.hostname=<YOUR_IP>

Подсказка отсюда.

Комментариев нет:

Архив