博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JVM常用参数配置---摘自《深入理解java虚拟机》《Java性能权威指南》
阅读量:4974 次
发布时间:2019-06-12

本文共 1644 字,大约阅读时间需要 5 分钟。

 

//常见配置汇总

//堆设置
-Xms:初始堆大小
-Xmx:最大堆大小
-XX:NewSize=n:设置新生代大小
-XX:NewRatio=n:设置新生代和老年代的比值.如:为3,表示新生代与老年代比值为1:3,新生代占整个新生代老年代和的1/4
-XX:SurvivorRatio=n:新生代中Eden区与两个Survivor区的比值.注意Survivor区有两个.如:3,表示Eden:Survivor=3:2,一个Survivor区占整个新生代的1/5
 -XX:PermSize=n:设置永久代(方法区)初始大小
-XX:MaxPermSize=n:设置永久代最大大小
//收集器设置
-XX:+UseSerialGC:设置串行收集器(Serial)
-XX:+UseParallelGC:设置并行收集器(Parallel)
-XX:+UseParalledlOldGC:设置并行老年代收集器
-XX:+UseConcMarkSweepGC:设置并发收集器(CMS)
//垃圾回收统计信息
-XX:+PrintGC
-XX:+PrintGCDetails(最常用)
-XX:+PrintGCTimeStamps
-Xloggc:filename
//并行收集器设置
-XX:ParallelGCThreads=n:设置并行收集器收集时使用的CPU数.并行收集//线程数.
-XX:MaxGCPauseMillis=n:设置并行收集最大暂停时间
-XX:GCTimeRatio=n:设置垃圾回收时间占程序运行时间的百分比.公式为1/(1+n)
//并发收集器设置
-XX:+CMSIncrementalMode:设置为增量模式.适用于单CPU情况(极少使用,jdk1.8中已经不推荐使用).
-XX:ParallelGCThreads=n:设置并发收集器新生代收集方式为并行收集时,使用的CPU数.并行收集线程数.

G1收集器设置

-XX:G1HeapRegionSize=n:设置G1分区大小

-XX:MaxGCPauseMillis=n:和Throughput收集器一致,控制发生stop-the-word的时间(这是G1最主要的调优方式)

 

JDK自带监控和故障处理命令有jps jstat jmap jhat jstack jinfojps,JVM Process Status Tool,显示指定系统内所有的HotSpot虚拟机进程。jstat,JVM statistics Monitoring是用于监视虚拟机运行时状态信息的命令,它可以显示出虚拟机进程中的类装载、内存、垃圾收集、JIT编译等运行数据。jmap,JVM Memory Map命令用于生成heap dump文件jhat,JVM Heap Analysis Tool命令是与jmap搭配使用,用来分析jmap生成的dump,jhat内置了一个微型的HTTP/HTML服务器,生成dump的分析结果后,可以在浏览器中查看jstack,用于生成java虚拟机当前时刻的线程快照。jinfo,JVM Configuration info 这个命令作用是实时查看和调整虚拟机运行参数。 详细的命令使用参考这里(转载)

调优工具

 

常用调优工具分为两类,jdk自带监控工具:jconsole和jvisualvm

 
  • jconsole,Java Monitoring and Management Console是从java5开始,在JDK中自带的java监控和管理控制台,用于对JVM中内存,线程和类等的监控
  • jvisualVM,jdk自带全能工具,可以分析内存快照、线程快照;监控内存变化、GC变化等。
 

 

GC日志各字段含义(下面两张图分别表示young gc 和full gc) young gc
full gc
 

 

转载于:https://www.cnblogs.com/j930131/p/7610863.html

你可能感兴趣的文章
扫描线与悬线
查看>>
用队列和链表的方式解决约瑟夫问题
查看>>
python 迭代器与生成器
查看>>
基于ASP.NET WEB API实现分布式数据访问中间层(提供对数据库的CRUD)
查看>>
[django实践]投票app
查看>>
[django]form的content-type(mime)
查看>>
JQUERY —— 绑定事件
查看>>
在TabControl中的TabPage选项卡中添加Form窗体
查看>>
oracle中SET DEFINE意思
查看>>
个人作业-最长英语链
查看>>
JMeter-性能测试之报表设定的注意事项
查看>>
1066-堆排序
查看>>
仿面包旅行个人中心下拉顶部背景放大高斯模糊效果
查看>>
强大的css3
查看>>
c#中的组件拖拽和MouseMove事件
查看>>
C# 小叙 Encoding (二)
查看>>
python创建对象数组避免浅拷贝
查看>>
CSS自学笔记(14):CSS3动画效果
查看>>
项目应用1
查看>>
Ubuntu下配置jdk和tomcat
查看>>