调JVM监控的时候需要远程连接机器,所以服务器需要开放JMX协议,配置如下。
现在我的项目是jboot-jfinal项目,用的是undertow容器,在启动脚本里面加入
JAVA_OPTS="-Xms256m -Xmx1024m -Djava.rmi.server.hostname=192.168.0.41 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
其中 -Xms256m -Xmx1024m 不用关心 是最小jvm和最大jvm内存。
1. -Djava.rmi.server.hostname: 服务器端的ip地址
2. -Dcom.sun.management.jmxremote.port: jmx的开放接口
3. -Dcom.sun.management.jmxremote.authenticate=false 用户账号密码验证关闭
4. -Dcom.sun.management.jmxremote.ssl=false ssl关闭
最后注意 关闭防火墙。
其他 容器配置例如tomcat 原理基本一样