`

为Java应用开启JMX服务

 
阅读更多

前言

JMX(Java Management Extensions)这项技术可用于监管Java应用。通常是由被监管程序开启JMX服务,再通过 JConsoleJMCVisualVM之类的工具利用该JMX服务远程监管目标程序。

 

与 JProfiler 相比,这种方式显得很繁琐笨拙,更容易遇到各种奇怪的问题。JProfiler 只需提供目标服务所在机器的 root 密码并指定 jdk 所在目录就能对目标服务进行监控,且不需要重启目标服务,监控功能更丰富。所以只要公司钱够,就考虑买 JProfiler 吧。
但还是有些场景需要目标程序开启JMX服务。为了避开某些坑,特提供样例。

 

开启JMX服务(示例)

为目标Java程序添加以下启动参数:

-Djava.rmi.server.hostname=192.168.1.2 \
-Dcom.sun.management.jmxremote.port=6666 \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.authenticate=false \

需要重新启动程序,使这些设置生效

 

VisualVM 连接远程JMX服务(示例)

 

 

 

 

 

  • 大小: 2.8 KB
  • 大小: 5 KB
  • 大小: 8 KB
  • 大小: 10.7 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics