如何监控Java垃圾回收机制

如何监控Java垃圾回收机制

ID:44356349

大小:413.69 KB

页数:9页

时间:2019-10-21

如何监控Java垃圾回收机制_第1页
如何监控Java垃圾回收机制_第2页
如何监控Java垃圾回收机制_第3页
如何监控Java垃圾回收机制_第4页
如何监控Java垃圾回收机制_第5页
资源描述:

《如何监控Java垃圾回收机制》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、如何监控Java垃圾回收机制学习了不同GC算法的执行过程,GC是如何工作的,什么是新生代和老年代,了解了JDK7中的5种GC类型,以及这5种类型对于应用性能的影响,现在解释JVM到底是如何执行垃圾回收处理的。一、什么是GC监控?GC监控,就是搞清楚JVM如何执行GC的一个过程。例如,可以查明:•什么时候新生代中的一个对象被移动到老年代,花费了多少时间?•Stop-the-world何时发生的,持续了多长时间?GC监控能鉴别JVM是否在高效地执行GC,我们可以决定是否有必要进行额外的性能调优(修改应用程序或者调整GC算法(GC优化)。)如何监控GC有很多种方法可以监控GC,差别仅仅是

2、GC信息展现方式不同。GC操作是由JVM來完成,而GC监控工具只是将JVM提供的GC信息进行展现,因此不论使用何种方式监控GC都将得到相同的结果,所以不必去学习所有的监控GC的方法,但是了解多一点可以根据不同的场景选择最为合适的方式。下面所列的工具以及JVM参数并不适用于所有的JVM供应商,因为并没有关于GC信息的强制标准。这里我们将使用HotSpotJVM(OracleJVM),因为NHN—直在使用0racle(Sun)JVM,所以用它作为示例来解释我们提到的工具和JVM参数更容易些。GC监控方法根据访问的接口不同,可以分成CUI和GUI两大类。CUIGC监控方法使用一个独立的叫

3、做jstat的CUI应用,或者在启动JVM的时候选择JVM参数〃・verbosegc〃。GUIGC监控由一个单独的图形化应用来完成,其中三个最常用的应用是jconsole,jvisualvm,VisualGCo1)jstatjstat是HotSpotJVM提供的一个监控工具,在$JDK_HOME/bin目录。其他监控工具还有jps和jstatdo有些时候,可能需要同时使用三种工具来监控。jstat不仅提供GC操作的信息,还提供类装载操作的信息以及运行时编译器操作的信息。这里将只涉及jstat能够提供的信息屮与监控GC操作信息相关的功能。SOCSICSOUSIUECEUOCOUPCP

4、UYGCYGCTFGCFGCTGCT3008.03072.00.01511.1343360.046383.0699072.0283690.275392.041064.3254018.45441.13319.5883008.03072.00.01511.1343360.047530.9699072.0283690.275392.041064.3254018.45441.13319.5883008.03072.00.01511.1343360.047793.0699072.0283690.275392.041064.3254018.45441.13319.588在上图的例子中,实际的数

5、据会按照如下列输出:SOCSICSOUSIUECEUOCOUPCVmid:虚拟机的IDoJava应用拥有自己独立的vmid,运行在本地机器上的vmid称之为Ivmid(本地vmid),通常是PID,PID的值可以使用ps命令或者windows任务管理器来获取,推荐使用jps来获取,因为PID和Ivmid有时会不致。jps通过JavaPS实现,jps命令会返回vmids和main方法的信息,正如ps命令展现PIDS和进程名字那样。首先通过jps命令找到要监控的Java应用的vmid,并把它作为jstat的参数。当儿个WAS实例运行在同一台设备上吋,如果只使用jps命令,将只能看到启动

6、信息,在这种情况下使用ps-ef

7、grepjava与jps配合使用。想要得到GC性能相关的数据需要持续不断地监控,因此在执行jstat时,要规则地输出GC监控的信息。例如,执行"jstat-gc1000"(或Is):每一秒展示一次GC监控数据;"jstat-gc100010":每1秒展现一次,共10次。参数名称描述gc输出每个堆区域的当前可用空间以及己用空间(伊甸园,幸存者等等),GC执行的总次数,GC操作累计所花费的时间。gccapactiy输出每个堆区域的最小空间限制(ms)/最大空间限制(mx),当前大小,每个区域之上执行GC的次数。(不输出当前己用空间以及GC执行时间)。g

8、ccause输出-gcutil提供的信息以及最后一次执行GC的发生原因和当前所执行的GC的发生原因gcnew输出新生代空间的GC性能数据gcnewcapacity输出新生代空间的大小的统计数据。geoid输出老年代空间的GC性能数据。gcoldcapacity输出老年代空间的大小的统计数据。gcpermcapacity输出持久带空间的大小的统计数据。gcutil输出每个堆区域使用占比,以及GC执行的总次数和GC操作所花费的事件。iij以只关心那些最常用的命令,会经常用

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。