当前位置:首页 > 每日看点 > 正文内容

java服务在运行过程中触发C2编译导致cpu抖动影响服务质量,该如何改善?

卡卷网1年前 (2024-12-08)每日看点267

针对Java服务在运行过程中触发C2编译导致CPU抖动影响服务质量的问题,以下是一些改善方法:

1. 调整Code Cache大小:

• 通过JVM参数-XX:ReservedCodeCacheSize=256M设置Code Cache的总容量上限。具体的设置应根据监控数据估算,例如单位时间增长量、系统最长连续运行时间等。如果没有相关统计数据,一种推荐的设置思路是设置为当前值(或者默认值)的2倍。

2. 使用龙井预热(Jwarmup):

• 根据前一次程序运行的情况,记录热点代码以及类加载顺序等信息。在应用下一次启动的时候积极主动地对相关类进行加载,并积极编译相关代码,进而使得应用尽快使用上C2编译优化的指令。从而在流量进来之前,提前完成类的加载、初始化和方法编译,避免一面解释执行一面后台编译带来的CPU与load飙高,rt超时等问题。

3. 逐步放开流量:

• 通过控制发布机器的流量大小,用低流量去先诱发JIT,再把发布机器的流量设置到正常水位,避免在JIT过程中,因为全量流量进来导致的CPU飚高、LOAD飚高、RT飚高等问题,使得应用发布或重启时顺滑平稳。

4. 调整JIT编译阈值:

• 通常情况下,我们可以使用-XX:CompileThreshold=5000修改JIT编译阈值为5000。将上述阈值调高意味着提高即时编译的门槛,将热点代码的编译工作分散开来,以防止某一时刻CPU的飙高。

5. 增加C2编译线程数:

• 通过JVM参数-XX:CICompilerCount=threads增加C2编译线程数,可以减少单个编译线程的负载,从而降低CPU占用率。

6. 关闭分层编译:

• 通过JVM参数-XX:-TieredCompilation关闭分层编译,这样可以避免C2编译器的介入,减少CPU的占用,但可能会牺牲一些性能。

7. 监控和分析:

• 使用工具如Arthas进行监控和分析,观察各线程对CPU的使用情况,定位问题线程。

8. 预热流量:

• 在系统启动时使用提前录制好的流量来使系统热点代码完成即时编译,然后再接收真正的流量,以减少对正式环境流量的影响。

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2024/12/3456.html

分享给朋友:

相关文章

戴尔科技集团创新引擎推进IT现代化的十种方式

戴尔科技集团创新引擎推进IT现代化的十种方式

       过去十年间,大大小小的企业与组织机构都在拥抱互联数字化社会。而现在,我们的工作和学习方式呈现分布式态势,正在经历更大的颠覆:家已俨然成为我们的办公和学习空...

中国CEO直播简史

中国CEO直播简史

  领导人爱对外发言这事,是中国的一个传统文化。  从乾隆爱往名画上盖章上,就可见一斑。  3Q大战时代,微博成了大佬“吵架”的战场,饭否变成了部分爱面子者的日记。  某种程度上说,互联网公关行业的诞生,和大佬们爱发言有着直接的关系。只不过...

请问什么软件支持看电视直播?

请问什么软件支持看电视直播?

2024年9月6日最新更新:本文列举的所有看电视直播、或流媒体影视资源点播的软件,我这两天又重新梳理成最新版本,最大程度保证可用性。获取方式见文末图片,或见评论。后续我也将持续更新,文章是旧的软件也会是新的,保证你拿到的都是最新可用版本。作...

到什么程度才叫精通 Linux?

我们医院有个大牛。有一次,我的Linux电脑下载了Microsoft office 365 不能运行。于是买了2.5升装康师傅冰红茶找到大牛,让他帮忙解决。大牛白了我一眼,让我把安装包发给他,只见他输入一个命令将安装包打开,整个屏幕都是数字...

如何做电商行业?

如何做电商行业?

“如何做电商*开网店”跟“如何找老婆”一样,没概况条件、没明确标准,就是扯犊子。我把话题具体一点说:具备“两三万”启动资金、掌握“选品+上架优化”基础技能,小则月入三五千、多则上万。跟摆地摊一样,有进货的钱、也不怕苦不怕累、稍微有点生意头脑...

如何评价小米14pro顶配可以选配卫星通话,小米15全系都无法选配?

如何评价小米14pro顶配可以选配卫星通话,小米15全系都无法选配?

雷总不是说了吗,我可以不用,但你不能没有。市面上OPPO Find X8 Pro和vivo X200 Pro的卫星通信版分别加价300,而荣耀Magic7和Magic7 Pro有卫星通信版且不加价,荣耀更显诚意。我觉得有是更好的,虽然使用卫...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。