摘要:
前几篇篇文章介绍了介绍了JVM的参数设置并给出了一些生产环境的JVM参数配置参考方案。正如之前文章中提到的JVM参数的设置需要根据应用的特性来进行设置,每个参数的设置都需要对JVM进行长时间的监测,并不断进行调整才能找到最佳设置方案。本文将介绍如果通过工具及Java api来监测JVM的运行状态,并... 阅读全文
摘要:
java application项目(非web项目)改进前:-Xms128m-Xmx128m-XX:NewSize=64m-XX:PermSize=64m-XX:+UseConcMarkSweepGC-XX:CMSInitiatingOccupancyFraction=78-XX:ThreadSta... 阅读全文
摘要:
JVM里的GC(Garbage Collection)的算法有很多种,如标记清除收集器,压缩收集器,分代收集器等等,详见HotSpot VM GC 的种类 现在比较常用的是分代收集(generational collection,也是SUN VM使用的,J2SE1.2之后引入),即将内存分为几个区域... 阅读全文
摘要:
不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序... 阅读全文
摘要:
collector种类GC在 HotSpot VM 5.0里有四种:incremental (sometimes called train) low pause collector已被废弃,不在介绍.类别serial collectorparallel collector(throughput co... 阅读全文
摘要:
java内存组成介绍:堆(Heap)和非堆(Non-heap)内存 按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的。”“在JVM中堆之外的内存称为非堆内存(Non-heap memory)”。可以看出JVM主... 阅读全文
摘要:
堆设置-Xmx3550m:设置JVM最大堆内存 为3550M。-Xms3550m:设置JVM初始堆内存 为3550M。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。-Xss128k: 设置每个线程的栈 大小。JDK5.0以后每个线程栈大小为1M,之前每个线程栈大小为256K... 阅读全文
摘要:
一、设置JVM内存设置1. 设置JVM内存的参数有四个:-XmxJava Heap最大值,默认值为物理内存的1/4,最佳设值应该视物理内存大小及计算机内其他内存开销而定;-XmsJava Heap初始值,Server端JVM最好将-Xms和-Xmx设为相同值,开发测试机JVM可以保留默认值;-Xmn... 阅读全文
摘要:
jstatMonitors Java Virtual Machine (JVM) statistics. This command is experimental and unsupported.Synopsisjstat[generalOption|outputOptions vmid[inter... 阅读全文
摘要:
jpsLists the instrumented Java Virtual Machines (JVMs) on the target system. This command is experimental and unsupported.Synopsisjps[options] [hostid... 阅读全文