`

JVM调优大纲

阅读更多
     我觉得处理JVM调优问题需要以下五个步骤:
     第一:理解清楚JVM内存模型,知道JVM内存的划分,包括堆、栈、方法区、程序计数器、本地方法区、栈的内存模型、方法区的常量池、线程执行操作共享内存等等
     第二:知道垃圾回收算法,注意是算法不是垃圾回收算法实现的垃圾回收器,包括基本回收策略里面的引用计数、标记-清除、复制、标记-整理;分区回收策略里面的增量回收和分代回收;系统线程策略的串行、并行和并发
     第三:知道具体JVM的垃圾回收器,垃圾回收器是对垃圾回收算法的实现,是一个嵌入到JVM里面的小工具,例如HotSpot JVM里面的分代回收器,针对年轻代的Serial,ParNew和Parallel Scavenge,针对年老代的CMS、Parallel Old以及Serial Old(MSC)。需要知道这针对年轻代的和针对年老代的这六种垃圾回收器的各自的特点和比较,例如ParNew和Parallel Scavenge有什么区别,MSC的存在是为了什么。
     第四:需要知道JVM调优的参数,-Xms,-Xmx,-Xss,-XX:PermSize=64m,等等,知道他们的默认值,知道他们的配合配置。
     官方HotSpot JVM调优参数链接:http://docs.oracle.com/javase/7/docs/technotes/tools/windows/java.html
     第五:也是最关键的东西,根据当前java应用,运用以上四点所学,予以JVM最适当的配置。这需要会用各种调试或监控工具和命令,大量的尝试和大量的经验,没有万能的垃圾回收算法和回收器,只有适合自己Java应用的。
1
5
分享到:
评论
1 楼 lvwenwen 2013-05-07  
JVM调优

相关推荐

Global site tag (gtag.js) - Google Analytics