jvm调优

本文介绍了如何配置JMX以实现远程监控,包括开启JMX、设置IP地址、端口,以及如何在Docker和SpringBoot环境下进行配置。强调了在Java7u25之后可以固定RMI端口以避免防火墙问题,并提供了不启用验证和SSL通信的选项。同时,还讲解了如何添加密码访问,以及相关配置文件的内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

jconsole远程连接
开启jmx,jdk1.5之前还要手动开启,现在已经默认开启了,所以可以省略
-Dcom.sun.management.jmxremote=true
服务所在机器的ip地址
-Djava.rmi.server.hostname=xx.xx.xx.xx
jmx的端口
-Dcom.sun.management.jmxremote.port=9080
JMX在远程连接时,会随机开启一个RMI端口作为连接的数据端口,很有可能这个端口会被防火墙给阻止,以至于连接超时失败。好在在Java7u25版本后可-Dcom.sun.management.jmxremote.rmi.port=端口号来定死这个端口,好消息是,你可以将这个端口和jmx.port的端口设置成一个端口,这样防火墙策略就只需要同行一个端口就可以了
-Dcom.sun.management.jmxremote.rmi.port=9080
不开启验证
-Dcom.sun.management.jmxremote.authenticate=false
不开启ssl通信
-Dcom.sun.management.jmxremote.ssl=false

如在docker+spring boot环境下
1.配置docker启动脚本 
-e "JAVA_OPTS=-Djava.rmi.server.hostname=xx.xx.xx.xx -Dcom.sun.management.jmxremote.port=9086 -Dcom.sun.management.jmxremote.rmi.port=9086 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
2.配置Dockerfile
ENTRYPOINT exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar app.jar

添加密码访问
-Dcom.sun.management.jmxremote.authenticate=true
-Dcom.sun.management.jmxremote.access.file=/data/file/StoreClient/jmxremote/jmxremote.access
-Dcom.sun.management.jmxremote.password.file=/data/file/StoreClient/jmxremote/jmxremote.password

jmxremote.access内容
admin readwrite
jmxremote.password内容
admin pwd123

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值