JVM性能调优

第一个问题,JVM性能调优指的是什么?
我认为首要问题是,如何减少gc的时间以及频率。
那么首先做的事gc次数和时间的查看,可以通过如下命令进行查询:
在这里插入图片描述
在这里插入图片描述
这个概念还是蛮重要的,然后可以通过如下命令来查看堆大小配置。

在这里插入图片描述
可以看到新生代和老生代大小的配置。
对于图像化显示可以使用jconsole进行远程图形化访问。
启动项目时命令如下:

nohup /data/javaProject/java-se-8u41-ri/bin/java -Djava.rmi.server.hostname=***** -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=8888 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.rmi.port=8888 -Dcom.sun.management.jmxremote.password.file=/data/javaProject/jmxremote.password -Dcom.sun.management.jmxremote.access.file=/data/javaProject/jmxremote.access -jar /data/javaProject/sso-1.0-SNAPSHOT.jar --server.port=8080 &

jmxremote.password配置格式如下:

[root@VM-16-7-centos javaProject]# cat /data/javaProject/jmxremote.password
admin 密码
[root@VM-16-7-centos javaProject]# cat /data/javaProject/jmxremote.access
admin readwrite

最后进行远程连接(记得使用tenlet进行端口测试,如果端口不通需要配置防火墙)
在这里插入图片描述
可以通过jstack命令来查看线程的状态
在这里插入图片描述
一些常见参数:

-XX:ThreadStackSize=<value>:设置线程的栈大小(字节数)(0表示默认) [Sparc: 512, Solaris Intel: 256, Sparc 64bit: 1024 all others 0]
-Xmx256M #设置堆最大大小
-Xms128M #设置堆最小大小
-XX:NewRatio=4 #设置新生代老生代比例
-XX:SurvivorRatio=4 #设置survivor和edion比例
-XX:ConcGCThreads=4 CMS垃圾回收器并行线程线,推荐值为CPU核心数。

推荐文件:
链接1
链接2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值