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

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

卡卷网11个月前 (12-08)每日看点198

针对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

分享给朋友:

相关文章

怎么用游戏搬砖挣钱呢?

怎么用游戏搬砖挣钱呢?

今天,我把我多年操作的经验分享出来,以供各位老板们学习借鉴,胆小的老板就离开吧,心里承受能力太弱了,会刷新你的认知的。有些新人在计算收益的时候,会以机器数来计算,其实是有误区的,比如,一台机器一个月搞400元,平均每天搞13元钱,搞上100...

知乎创作收益高吗?

知乎创作收益高吗?

高啊,主要是大多数人不知道怎么做。(这是以前写的,请看到最后)我之前就是傻傻写问答,文章,结果一毛钱收益没有。知乎上收益高的主要有盐选,好物推荐,致知计划,付费咨询。1、盐选吧,是写故事,小说类的天堂,还有就是大咖们的地盘了,难度高。2、好...

我爸讽刺我,写个破代码一年才十几万,他在工地带50个人,让我回去跟他干,写代码没出路,我该怎么选择?

我跟你一样的情况,本人现身说法,千万不要跟你爸干,我就是反面教材,现在想回去都回不去了,快十年没写代码了,再就是岁数大了,38岁了,35岁以上的码农根本就没公司愿意要,而且会受歧视。工程不好干,首先就是不合法,在法律层面,根本就没有包工头的...

计算机专业不干互联网不热爱技术,还能转行干什么?

转行的思路,无非也就是那几个。我们顺着每个思路,一路捋一遍,基本上,大致可行的方向,也就有了。一、跟对口职业和岗位业务链条相邻的职业和岗位计算机专业如果找到了对口的技术岗位,跟技术工作联系最紧密的岗位是什么?产品经理。当然,大多数产品经理也...

2024,java开发,已经炸了吗?

炸的透透的了,坐标南京。一月底,一个好哥们,双休朝九晚六不加班18K,被裁。入职不到两年,算是工资和年终奖才赔了6.5W左右。上周五新公司入职,周六开始加班。现在每周134加班到晚上八点,好像薪资还不如以前高。三月上旬,另一个好哥们,薪资好...

有哪些让你目瞪口呆的 Bug ?

有哪些让你目瞪口呆的 Bug ?

成都有个监狱情况比较特殊,关押的基本全是重犯,而且还都是经济犯和政治犯,他们以前都是一方大佬,在自己的一亩三分地翻手为云覆手为雨,无非是不小心中箭落马或帮老大顶锅才进监狱,所以即使进来了,他们依然保持着体面和骄傲,依从性差,虽然不至于和监狱...

发表评论

访客

看不清,换一张

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