1.服务的启动脚本要添加相关参数,
例如,参数JVM_OPTIONS中添加参数 -Dcom.sun.management.jmxremote.port=7799 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false
或者将参数存在一个变量$VISUALVM_OPTIONS中,然后添加到执行命令的参数中
JVM_OPTIONS="-server -Xms5g -Xmx20g -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:NewRatio=2 -XX:SurvivorRatio=8 -XX:ParallelGCThreads=10 -XX:ConcGCThreads=5"
#VISUALVM_OPTIONS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=7799 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
OPTIONS="$JVM_OPTIONS $VISUALVM_OPTIONS"
start_cmd() {
……
exec $JAVA -DProcessName=${PROCESS_NAME} $OPTIONS ……
}
2.本机装了jdk,可以在例如,C:\Program Files\Java\jdk1.8.0_131\bin找到自带的jvisualvm.exe
1)左侧导航栏 Applications -> Remote (右键) -> Add Remote Host
2)填好服务器名称
3)这个服务器出现在左侧列表中
4)服务器上启动服务后,JVM VISUAL界面右键选择“Add JMX Connection...”,填好服务器IP和端口(其中端口和启动脚本中设置的要一致)
5)点击确认后,服务进程会出现在左侧列表
6)双击该进程在右侧页面中选择Monitor可以监控该进程的CPU和Heap