JMX-Java Management Extensions

JMX全称Java Management Extensions, 为Java应用提供管理扩展功能。在Java 5的时候引入

概念

NameDescription
MBean 全称为Managed Bean, 你可以实现一个MBean来JMX提供管理内容
MBean Server(也叫JMX Agent) 提供集中注册管理MBean功能,允许远程通过他代理操作MBean
JMX Connectors 通过实现不同的通讯协议,来允许远程访问
Jconsole 一款JMX图形客户端,运行用户访问本地或者远程的JMX,默认包含在Java SDK工具中

Referering Java Opts

启动Java可以赋予JVM Machine一些参数,例如设置运行内存堆栈的大小。此处列举一些有关JMX的相关参数

参数名类型描述
-Dcom.sun.management.jmxremote 布尔 是否支持远程JMX访问,默认true
-Dcom.sun.management.jmxremote.port 数值 监听端口号,方便远程访问
-Dcom.sun.management.jmxremote.authenticate 布尔 是否需要开启用户认证,默认开启
-Dcom.sun.management.jmxremote.ssl 布尔 是否对连接开启SSL加密,默认开启
-Dcom.sun.management.jmxremote.access.file 路径 对访问用户的权限授权的文件的路径,默认路径JRE_HOME/lib/management/jmxremote.access
-Dcom.sun.management.jmxremote. password.file 路径 设置访问用户的用户名和密码,默认路径JRE_HOME/lib/management/ jmxremote.password

例如,你需要启动一个常驻后台的springboot程序(比如app.jar),如何开启一个支持远程访问的JMX,可以尝试下面的命令

java -jar app.jar -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=10080 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false

对于关于JMX相关的参数你配置这些就够了,就可以使用Jconsole连接,

 
 
JDK自带的监控工具有:
1、jconsole
2、jvisualvm
 
原文地址:https://www.cnblogs.com/frankyou/p/9528853.html