jvm参数分为3类
- 标准参数:不会随着jdk版本变化
- -X参数:非标准参数,会随着jdk版本而变动
- -XX参数
1、boolean类型的 启动活着停止
2、非boolean类型的 -XX:MaxHeapSize=100M - 其他参数
-Xms 等同于 -XX:InitialHeapSize=100M
其他类型参数是缩写
jvm参数怎么修改
1、在ide启动设置里修改
2、java 命令启动时 修改
3、中间件比如tomcat,会有配置文件去修改 start.sh
4、实时修改 jinfo命令修改
常用命令
jps :查看当前java进程
jinfo:查看或者修改jvm参数
jstat: 查看gc或者class信息 用法:jstat -gc pid 1000 10 查看gc信息每1000毫秒输出一次一共输出10次
jstack:查看线程堆栈信息 jstack pid 。如果线程发生问题了方便排查。比如死锁
jmap:生成堆内存的快照 用法:jmap -heap pid 。 意义:生产环境有时候oom-》在发生oom的时候如果能把堆内存的信息打印出来,知道是什么样的对象占用的内存空间比较大。
dump文件做法:jmap -dump:format=b,file=heap.hprof pid
发生oom自动dump设置: -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=heap.hprof
常用命令图形化工具
对常用命令的可视化封装
官方自带的
- jconsole
- jvisualvm
网友评论