第十章 常用的JVM参数记录
GC
- -XX:+PrintGC 打印GC日志
- -XX:+PrintGCDetails 打印详细的GC日志
- -Xloggc:/var/gc.log 将GC日志打印在根目录的var文件夹下的gc.log文件中
class
- -verbose:class 打印类加载和卸载信息
堆内存
- -Xmx2048m 最大堆内存
- -Xms2048m 最小堆内存
- -Xmn512m 新生代内存
- -XX:SurvivorRatio 值为eden/from=eden/to
- -XX:+HeapDumpOnOutOfMemoryError 在内存溢出时导出整个堆信息
- -XX:HeapDumpPath=/var/heap.dump 指定导出堆的存放路径
方法区
- -XX:PermSize=50m 方法区大小
- -XX:MaxPermSize=50m 方法区最大大小
Metaspace
- -XX:MaxMetaspaceSize 指定元空间的大小,默认情况下,只受限于系统内存大小
栈
- -Xss1m
直接内存
- -XX:MaxDirectMemorySize 最大可用直接内存,默认最大值为-Xmx,直接内存使用量达到该值时,触发垃圾回收
垃圾回收器
- -XX:UseSerialGC 使用serial/serial old垃圾回收器
- -XX:PrintGCApplicationStoppedTime:查看STW时间
- -XX:UseParNewGC 使用parNew/serial old
- -XX:ParallelGCThreads parNew的GC线程数
Parallel
- -XX:+UseParallelGC 使用Parallel Scavenge/serial Old //TODO
- -XX:+UseParallelOldGC 使用Parallel Scavenge/Parallel Old
- -XX:GCTimeRatio:直接设置吞吐量大小,假设设为19,则允许的最大GC时间占总时间的1/(1+19),默认值为99,即1/(1+99)
- -XX:MaxGCPauseMillis:最大GC停顿时间,该参数并非越小越好
- -XX:+UseAdaptiveSizePolicy:开启该参数,-Xmn/-XX:SurvivorRatio/-XX:PretenureSizeThreshold这些参数就不起作用了,虚拟机会自动收集监控信息,动态调整这些参数以提供最合适的的停顿时间或者最大的吞吐量(GC自适应调节策略),而我们需要设置的就是-Xmx,-XX:+UseParallelOldGC或-XX:GCTimeRatio两个参数就好(当然-Xms也指定上与-Xmx相同就好)
CMS
- -XX:+UseConcMarkSweepGC 使用parNew/CMS
- -XX:CMSInitiatingOccupancyFraction 指定当年老代空间满了多少后进行垃圾回收。默认68,即68%
- -XX:+UseCMSCompactAtFullCollection (默认是开启的)在CMS收集器顶不住要进行FullGC时开启内存碎片整理过程,该过程需要STW
- -XX:CMSFullGCsBeforeCompaction 指定多少次FullGC后才进行整理
- -XX:ParallelCMSThreads 指定CMS回收线程的数量,默认为:(CPU数量+3)/4
- -XX:+CMSPermGenSweepingEnabled与-XX:+CMSClassUnloadingEnabled 使用CMS进行方法区的回收
G1
- -XX:+UseG1GC 使用G1
对象进入年老代
- -XX:MaxTenuringThreshold=15 复制过15次后
- -XX:PretenureSizeThreshold=1000 大于1000字节的对象直接进入年老代
JIT
- -XX:CounterHalfLifeTime 半衰周期
- -XX:CompileThreshold 默认server模式是10000,即在半衰周期内方法调用次数达到10000次,将该方法编译为机器码
- -XX:-UseCounterDecay 关闭上述机制,即半衰周期的无穷大
- -XX:OnStackReplacePercent 用于计算循环体执行的次数,server模式下通过该值算出来的回边数是10700,即循环体执行10700次时便以为机器码
第十章 常用的JVM参数记录的更多相关文章
- [转]17个常用的JVM参数
作者:SimpleSmile_5177 来源:https://www.cnblogs.com/Simple-Object/p/10272326.html 前言 大家都知道,jvm在启动的时候,会执行默 ...
- Tcpdump 常用命令、参数记录
一.介绍 一个关于Centos Tcpdump 的个人工作总结. 二.参数介绍: 1. -i: 指定要进行抓包的网卡 2.-s0 :表示每个报文的大小是接收到的指定大小,如果没有这个选项,则超过 ...
- JVM 参数设置
YGC FGC 都会影响程序的运行,中断程序,JVM参数调整比较复杂,现在记录了一下平时常用的JVM参数: jar 包启动: usr/java/bin/java -jar -Xms2560m -Xmx ...
- 常用的JVM调优参数总结汇总【随时查阅学习】
本文章参数根据后期用的参数会持续更新 --- (1)-Xms20M 表示设置JVM启动内存的最小值为20M,必须以M为单位 (2)-Xmx20M 表示设置JVM启动内存的最大值为20M,必须以M为单 ...
- 常用的JVM配置参数
一.Trace 跟踪参数 在Eclipse中,如何打开GC的监控日志 选择菜单栏Run -> Run Configurations -> Java Application -> 选择 ...
- 【java虚拟机】常用的jvm配置参数
转自:https://www.cnblogs.com/pony1223/p/8661219.html 零.在IDE的后台打印GC日志: 既然学习JVM,阅读GC日志是处理Java虚拟机内存问题的基础技 ...
- JVM参数汇总
一.java启动参数共分为三类: 其一是标准参数(-),所有的JVM实现都必须实现这些参数的功能,而且向后兼容:其二是非标准参数(-X),默认jvm实现这些参数的功能,但是并不保证所有jvm实现都满足 ...
- 修改jmeter jvm参数
记录下常用的linux下 jmeter jvm参数修改,打开jmeter安装目录/bin/jmeter(非jmeter.sh) 1. 修改默认堆内存大小 #默认的 HEAP="-Xms512 ...
- 明白生产环境中的jvm参数
明白生产环境中的jvm参数 写代码的时候,程序写完了,发到线上去运行,跑一段时间后,程序变慢了,cpu负载高了--一堆问题出来了,所以了解一下生产环境的机器上的jvm配置是有必要的.比如说: JDK版 ...
随机推荐
- linux学习笔记-5.用户和组
1.添加一个tom用户,设置它属于users组,并添加注释信息 分步完成: useradd tom usermod -g users tom usermod -c "hr tom" ...
- CSS3实现原腾讯视频透明边框,多重边框等(关于边框那些不为人知的事情)
1.hsla或rgba实现半透明边框. rgba在rgb的基础上增加了透明通道,就不详细说了,下面重点说下hsla: 说明: HSLA(H,S,L,A) 取值: H:Hue(色调).0(或360)表示 ...
- MySQL数据库之视图
1 引言 为了简化复杂SQL语句编写,以及提高数据库安全性,MySQL数据库视图特性.视图是一张虚拟表,不在数据库中以储存的数据值形式存在.在开发中,开发者往往只对某些特定数据和所负责的特定任务感兴趣 ...
- [ 转载 ] Tcp三次握手和四次挥手详解
#TCP的报头: 源端口号:表示发送端端口号,字段长为16位.目标端口号:表示接收端口号,字段长为16位.序列号:表示发送数据的位置,字段长为32位.每发送一次数据,就累加一次该数据字节数的大小.注意 ...
- HTTP错误405
405 - 用来访问本页面的(方法不被允许) HTTP 错误 405 -禁止访问资源 HTTP 错误 405 405 不允许此方法 对于请求所标识的资源,不允许使用请求行中所指定的方法.请确保为所请求 ...
- 求有向图的强连通分量个数 之 Kosaraju算法
代码: #include<cstdio> #include<cstring> #include<iostream> using namespace std; ][] ...
- JNI之String类型
JNI使用的是改良的UTF-8格式的Strings. 以下文档来自官方: Modified UTF-8 Strings The JNI uses modified UTF-8 strings to r ...
- How to replace a value in web.xml with a Maven property?(转)
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-p ...
- 【来龙去脉系列】深入理解DIP、IoC、DI以及IoC容器
摘要 面向对象设计(OOD)有助于我们开发出高性能.易扩展以及易复用的程序.其中,OOD有一个重要的思想那就是依赖倒置原则(DIP),并由此引申出IoC.DI以及Ioc容器等概念.通过本文我们将一起学 ...
- Bitbox : a small open, DIY 32 bit VGA console
Bitbox : a small open, DIY 32 bit VGA console Hi all, I've been developing a simple DIY console and ...