分析下 [app@app05 tomcat]$ /opt/jdk1.7.0/bin/jstat -gcutil 1541

动态 未结 0 22
邮箱用户_r5u2k
邮箱用户_r5u2k LV1 12月16日 14:20 发表
摘要:
分析下 [app@app05 tomcat]$ /opt/jdk1.7.0/bin/jstat -gcutil 15412 1000 S0 S1 E O P YGC YGCT FGC FGCT GCT 0.00 99.26 57.85 61.20 77.27 2597 71.203 13 20.869 92.072 0.00 99.26 57.85 61.20 77.27 2597 71.203 13 20.869 92.072 0.00 99.26 57.85 61.20 77.27 2597 71.203 13 20.869 92.072 0.00 99.26 57.85 61.20 77.27 2597 71.203 13 20.869 92.072 0.00 99.26 57.85 61.20 77.27 2597 71.203 13 20.869 92.072 0.00 99.26 57.85 61.20 77.27 2597 71.203 13 20.869 92.072 如上是否会导致应用卡死
分析这段jstat输出: 1. 数据解读: - S0和S1是新生代的两个Survivor区,S0完全空(0.00%),S1使用率很高(99.26%) - Eden区(E)使用率57.85% - 老年代(O)使用率61.20% - 永久代(P)使用率77.27% - 发生了2597次Young GC,总耗时71.203秒 - 发生了13次Full GC,总耗时20.869秒 - GC总耗时92.072秒 2. 潜在问题: - Survivor区使用不均衡(S0=0%, S1=99.26%),说明对象分配或回收存在问题 - S1区接近填满,可能导致对象过早晋升到老年代 - 老年代使用率超过60%,有一定压力 - 永久代使用率较高(77.27%),需要关注是否有类加载问题 3. 是否会导致卡死: 从这段监控数据来看: - GC次数较多,但在观察期间数据没有变化,说明当前GC活动已经稳定 - 虽然各区域使用率都较高,但还未到达极限 - 如果内存分配速率突然增加,可能会触发频繁GC,导致性能下降 建议措施: 1. 增大Survivor区大小,改善对象分配策略 2. 考虑适当增加堆内存大小 3. 检查是否存在内存泄漏 4. 关注永久代使用情况,必要时增加永久代空间 结论:当前状态不会直接导致应用卡死,但存在性能隐患,建议优化JVM参数配置。
收藏(0)  分享
相关标签: 智能问答
问题没解决?让AI助手帮你作答 AI助手
0个回复
  • 消灭零回复