深入JVM虚拟机之使用jstat命令摸清线上系统的JVM运行状态

本文介绍了如何利用jstat工具监测JVM的内存使用和GC行为。通过观察新生代对象的增长速度、Young GC的触发频率和耗时、老年代的变化以及Full GC的平均耗时,可以有效地分析系统的内存压力和性能。通过对这些指标的了解,可以对线上JVM进行有针对性的优化。
摘要由CSDN通过智能技术生成

1、对于运行中的系统,想检查JVM中的整体运行情况,最常用的工具就是jstat

2、通过jstat可以查看JVM内部的内存的使用情况,还有GC的执行次数以及耗时

3、通过这些指标,可以判断出系统的当前内存使用压力以及GC压力,内存分配是否合理

 

新生代对象的增长速度

1、对JVM首先要了解的,就是随着系统的运行,每秒钟会在年轻代的Eedn区分配多少对象

2、 jstat -gc [PID] 1000每隔1秒中执行1次jstat统计

3、举例:第一秒先显示Eden区使用了200MB内存,第二秒显示Eden区使用了205MB内存,第三秒显示Eden区使用了209MB内存,此时你可以轻易的推断出来,这个系统大概每秒钟会新增5MB左右的对象

4、按照上述思路,可以把握线上系统的高峰和日常两个时间段的对象增长速率。

Young GC的触发频率

1、知道新生代对象的增长的速度,很容易推测出来多久发生一次Young GC  

2、比如5MB每秒,Eden区一共300MB,则大概1分钟就会Monitor GC一次。

Young GC平均耗时

1、jstat结果显示了系统已经发生饿多少次Young GC以及这些Young GC总耗时

2、比如系

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值