JVM虚拟机参数】的更多相关文章

转载:https://blog.csdn.net/see__you__again/article/details/51998038不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM.GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率.但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序就有很大区别(Web可以适当的停顿,但GUI停顿是客户无法接受的),而…
1.参数 -XX:+PrintGC 只要遇到 GC 就会打印日志 -XX:+UseSerialGC 配置串行回收器 -XX:+PrintGCDetails 查看详细信息,包括各个区的情况 -XX:+PrintCommandLineFlags 可以将隐式或显式传给虚拟机的参数输出 -Xms4m 设置堆初始大小为 4m -Xmx20m 设置堆最大为 20m 2.备注 以 -XX:+PrintGC 为例子 1.-XX 表示对系统级别的 ( jvm ) 配置,比如日志信息.使用什么样的垃圾回收器 2.非…
1.方法区( 永久区 ) 和堆一样,方法区是一块所有线程共享的区域,他用于保存系统类的信息.默认情况下 -XX:MaxPermSize 为 64m.如果系统运行时产生大量的类,就需要设置一个合适方法区大小,以免出现方法区内存溢出的情况. 2.参数 -XX:permSize=64m 设置方法区初始化内存为 64m -XX:MaxPermSize=64 设置方法区最大内存为 64m  3.eclipse 配置 jvm 参数.请打开下面连接 http://www.cnblogs.com/fangwu/…
1.参数 -Xss 指定线程最大的栈空间,整个参数也直接决定了函数可调用的最大深度 2.测试代码 private static int count; public static void addCount() { count++; addCount(); } public static void main(String[] args) { //配置参数 //-Xss5m try { addCount(); } catch (Throwable e) { System.out.println("调…
1.参数 -Xmn 设置新生代的大小,设置一个比较大的新生代会减少老年代的大小,这个参数对系统性能以及 GC 行为影响很大,新生代大小一般设置为真个堆内存的1/3到1/4 -XX:SurvivorRatio 用来设置新生代中 eden 区和 from/to 区的比例.含义 -XX:SurvivorRatio = eden/from = eden/to -XX:NewRatio 设置新生代和老年代的比例 -XX:NewRatio = 老年代/新生代 2.测试代码 public static voi…
追踪参数: 打印GC简要信息 -XX:+PrintGC 打印GC详细信息 -XX:+PrintGCDetails 打印CG发生的时间戳 -XX:+PrintGCTimeStamps 指定GC log的位置 -Xloggc:log/gc.log 打印类的加载情况 -XX:+TraceClassLoading 堆参数: -Xmx 最大堆 -Xms 最小堆 -Xmn 新生代大小 -XX:NewRatio 新生代(eden+2*s)和老年代(不包含永久区)的比值 4 表示 新生代:老年代=1:4,即年轻…
1) 设置-Xms.-Xmx相等: 2) 设置NewSize.MaxNewSize相等: 3) 设置Heap size, PermGen space: Tomcat 的配置示例:修改%TOMCAT_HOME%/bin/catalina.bat or catalina.sh 在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行: Cmd代码 set JAVA_OPTS=-Xms800m -Xmx800m -XX:PermSize=128…
之后写的东西就会用到虚拟机参数了,现在这里汇个总自己平时用到的.看到的一些虚拟机参数.现在看不懂没关系,反正之后都会用到的: (1)-Xms20M 表示设置堆容量的最小值为20M,必须以M为单位 (2)-Xmx20M 表示设置堆容量的最大值为20M,必须以M为单位.将-Xmx和-Xms设置为一样可以避免堆自动扩展.大的项目-Xmx和-Xms一般都要设置到10G.20G甚至还要高 (3)-verbose:gc 表示输出虚拟机中GC的详细情况 (4)-Xss128k 表示可以设置虚拟机栈的大小为12…
常用JVM配置参数 常用JVM配置参数主要有:Trace跟踪参数.堆的分配参数.栈的分配参数. 一.Trace跟踪参数 跟踪参数用于跟踪监控JVM,对于开发人员来讲用于JVM调优以及故障排查的. 1.打印GC的简要信息 -verbose:gc -XX:+PrintGC 这两个配置参数效果是一样的,都是在发生GC时打印出简要的信息,例如执行代码 public static void main(String[] args) { byte[] bytes = null; for (int i = 0;…
在虚拟机运行的过程中,如果可以跟踪系统的运行状态,那么对于问题的故障排查会有一定的帮助,为此,虚拟机提供了一些跟踪系统状态的参数,使用给顶的参数执行java虚拟机,就可以在系统运行时打印相关日志,用于分析实际问题.我们进行迅疾参数配置,其实主要是围绕着堆.栈.方法区进行配置. 堆分配参数 -XX:+PrintGC使用这个参数,虚拟机启动后,只要遇到GC就会打印日志. -XX:+UserSerialGC 配置串行回收器 -XX:+PrintGCDetails可以查看详细信息,包括各个区的情况 -X…