前言
最近遇到使用Tomcat自带的JVM监控软件来监测堆内存及线程数的监控,同时为了调优Java虚拟机内存方式优化运行环境,特记录以下修改配置方式,以下是使用的工具(visualvm_204)链接
- 链接:https://pan.baidu.com/s/15vxHxI5NESpx5BcYnlO_Rg
提取码:1qhj
JVM远程配置
1、可在Tomcat的bin目录下找到startup.sh,在startup.sh文件的(exec “ P R G D I R " / " PRGDIR"/" PRGDIR"/"EXECUTABLE” start "$@"位置上方)添加:
export CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote=true //是否开启远程监控
-Djava.rmi.server.hostname=10.128.99.229 //监控IP地址
-Dcom.sun.management.jmxremote.port=7003 //端口(未使用端口号)
-Dcom.sun.management.jmxremote.ssl=false //是否ssl加密
-Dcom.sun.management.jmxremote.authenticate=false" //是否需要认证
2、使用visualvm工具,在Remote位置处右击Add Remote Hostname
再Add成功后右击Host name选择Add JMX Connection
具体监控界面如下
修改JAVA虚拟机内存配置
1、方式一:在Tomcat的bin目录下找到catalina.sh文件,在文件(# OS specific support. $var must be set to either true or false.下方)添加:
JAVA_OPTS="-Xms1024m -Xmx1024m -XX:PermSize=512m -XX:MaxPermSize=512m" //Tomcat8 已弃用后两项
具体的JVM参数设置项说明详见:https://blog.csdn.net/weixin_34248849/article/details/93224526
2、方式二:Tomcat并不建议直接在文件中修改配置项,而是通过在同级文件setenv.sh中写入。
通常情况我们找到setenv.sh(默认无此文件,新建一个),再写入需要修改的配置项
export CATALINA_OPTS="$CATALINA_OPTS -Xms1024m"
export CATALINA_OPTS="$CATALINA_OPTS -Xmx1024m"
export CATALINA_OPTS="$CATALINA_OPTS -XX:PermSize=512m"
export CATALINA_OPTS="$CATALINA_OPTS -XX:MaxPermSize=512m"
查看是否配置生效,我们可在JVM监控工具中查看。
总结
以上内容只为总结记录一下在工作过程的问题,有啥问题还望指正。