CMS如何调优

这篇具有很好参考价值的文章主要介绍了CMS如何调优。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

业务JVM频繁Full GC如何排查

原则是先止损,再排查。
FGC的原因是对象晋升失败或者并发模式失败,原因都是老年代放不下晋升的对象了。
1.可能是大对象导致的内存泄漏。快速排查方法:观察数据库网络IO是否和FGC时间点吻合,找到对应的SQL和代码。分析内存dump。可以使用jvisualvm查看,TODO 需要了解分析工具中指标的含义,这种方式定位的时间比较长
https://cloud.tencent.com/developer/article/1824276
2.可能是内存泄漏。排查方法:(1)查看老年代内存使用情况,如果内存使用率很高则可能是内存泄漏,代码有问题。(2)分析监控,是否每次GC后内存使用率都是上升的。分析内存堆栈。
在Java中,如果发生内存泄漏,会导致GC回收不彻底,每次GC后,堆内存使用率逐渐增高
https://www.jianshu.com/p/1c6bc8842463
3.如果是比较稳定的系统,并且不是所有的环境都有FGC的问题,则可能是JVM参数设置得有问题。
4.故障可以先执行jstack和jmap看看内存情况,然后进行止损操作
https://java.isture.com/java/jvm/java-jvm-gc-log.html

一些参考资料

1.JVM堆或者元数据空间不足或者OOM 可以明显看到GC线程占用率明显高于其他线程
https://arthas.aliyun.com/doc/dashboard.html#%E6%95%B0%E6%8D%AE%E8%AF%B4%E6%98%8E
2.CMS GC的分析和解决
TODO https://tech.meituan.com/2020/11/12/java-9-cms-gc.html
3.GC优化参数如何设置
TODO https://engineering.xueqiu.com/blog/2015/06/25/jvm-gc-tuning/

一些分析工具和实际案例

https://zhuanlan.zhihu.com/p/491729418
上面是一下GC日志分析工具,GCeasy实际使用体验不错,下面是使用这个工具分析的例子

一个业务系统GC频繁,从cat上看每分钟OGC时间2s+,YGC时间1.5s。使用这个工具可以看到YGC和OGC都很频繁 ,说明是堆大小不够用。
CMS如何调优,jvm,java
CMS如何调优,jvm,java
并且在GC后堆内存都能回收,说明不是堆泄漏。
CMS如何调优,jvm,java

参考

CMS和GC调优原理
https://caison.github.io/2019/10/13/li-jie-java-gc-yuan-li-he-diao-you/#toc-heading-13
java内存区域说明
https://www.lixueduan.com/posts/java/07-jvm-runtime-area/
什么事增量式GC
https://liujiacai.net/blog/2018/08/04/incremental-gc/

问题

1.CMS的阶段并发可取消的预清理,循环终止条件之一是新生代内存使用率达到阈值,达到了阈值会做什么操作?触发YGC?
2.CMS的阶段并发可取消的预清理,会进行YGC吗?文章来源地址https://www.toymoban.com/news/detail-822768.html

到了这里,关于CMS如何调优的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 3.Java面试题—JVM基础、内存管理、垃圾回收、JVM 调优

    一篇文章掌握整个JVM,JVM超详细解析!!! JVM (Java虚拟机) 是运行 Java 字节码 的 虚拟机 。 JVM 针对 不同系统 有 特定实现 ( Windows 、 Linux 等),目的是 同样的代码 在 不同平台 能运行出 相同的结果 。 Java 语言 要经过 编译 和 解释 两个步骤: 编译 :通过 编译器 将 代码 一

    2024年02月15日
    浏览(49)
  • 面试官:如何进行 JVM 调优(附真实案例)

    面试官:在工作中做过 JVM 调优吗?讲讲做过哪些 JVM 调优? 我一个QPS不到10的项目,上次问我缓存穿透缓存雪崩,这次问我 JVM 调优,我是真滴难。 不过大家别慌,热心的我给大家找来了几个满分回答,大家选择合适的使用。 回答1:听好了,下面将是我第一次 JVM 调优。 回

    2024年01月19日
    浏览(55)
  • 【JVM调优系列】如何导出堆内存文件

    💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老 导航 檀越剑指大厂系列:全面总

    2024年01月17日
    浏览(48)
  • 【Java虚拟机】JVM调优和分析案例综合实战

    1.什么是JVM性能优化 jvm性能优化涉及到两个很重要的概念:吞吐量和响应时间。jvm调优主要是针对他们进行调整优化,达到一个理想的目标,根据业务确定目标是吞吐量优先还是响应时间优先。 吞吐量:用户代码执行时间/(用户代码执行时间+GC执行时间)。 响应时间:整个接

    2024年02月03日
    浏览(40)
  • JVM调优篇:探索Java性能优化的必备种子面试题

    首先面试官会询问你在进行JVM调优之前,是否了解JVM内存模型的基础知识。这是一个重要的入门问题。JVM内存模型主要包括程序计数器、堆、本地方法栈、Java栈和方法区(1.7之后更改为元空间,并直接使用系统内存)。 正常堆内存又分为年轻代和老年代。在Java虚拟机中,年

    2024年02月15日
    浏览(61)
  • 【Jvm】性能调优(拓展)Jprofiler如何监控和解决死锁、内存泄露问题

    Jprofilers是针对Java开发的 性能分析工具(免费试用10天) , 可以对Java程序的 内存,CPU,线程,GC,锁 等进行监控和分析 , 本人IDEA版本是 2020.2.2 ,选择的Jprofiler版本是 12.0 (早期的版本是纯英文的, 12.0支持中文 ,安装主要考虑是否与IDEA插件兼容即可) 进入Jprofiler官网下载 - Jprofiler 版本这

    2024年02月19日
    浏览(45)
  • TOMCAT部署及优化(Tomcat配置文件参数优化,Java虚拟机(JVM)调优)

    TOMCAT tomcat :是一个开放源代码的web应用服务器,基于java代码开发的。也可以理解为tomacat就是处理动态请求和基于java代码的页面开发。可以在html当中写入java代码,tomcat可以解析html页面当中的java,执行动态请求,动态页面。 tomcat是机制存在一些问题,如果不对tomcat进行优化

    2024年02月13日
    浏览(31)
  • Java线上故障排查(CPU、磁盘、内存、网络、GC)+JVM性能调优监控工具+JVM常用参数和命令

    根据服务部署和项目架构,从如下几个方面排查: (1)运用服务器:排查内存,cpu,请求数等; (2)文件图片服务器:排查内存,cpu,请求数等; (3)计时器服务器:排查内存,cpu,请求数等; (4)redis服务器:排查内存,cpu,连接数等; (5)db服务器:排查内存,cpu,连接数

    2024年02月07日
    浏览(62)
  • 【JVM故障问题排查心得】「Java技术体系方向」Java虚拟机内存优化之虚拟机参数调优原理介绍

    本文主要针对于综合层面上进行分析JVM优化方案总结和列举调优参数计划。主要包含: 调优之逃逸分析(栈上分配) 调优之线程局部缓存(TLAB) 调优之G1回收器 -XX:+DoEscapeAnalysis 逃逸分析(Escape Analysis) 逃逸分析的基本行为就是分析对象动态作用域:当一个对象在方法中被定

    2024年01月25日
    浏览(59)
  • 记CMS FGC 的一次调优

            有一个系统,有如下特征,偶尔会触发 FGC(1小时几次,每次持续4~5分钟): 机器规格 48C96G,规格已经很大了,不宜再扩大 内存分配:Young 20GB(1:1:8), Old  70GB, 堆外4GB, 预留 2GB 给 OS 使用 ParNew GC +  CMS GC 启动后需要加载大量元数据、缓存,大概占据 30GB~40GB 内存,这

    2024年02月01日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包