业务系统突然延时增加,JVM热区缓存(Hot Spot Cache)不足导致的异常

运维人员收到告警短信,原本API接口正常5s内可以响应的接口,现在返回大量超时。

CRM系统故障处理过程重新梳理如下:

一、问题发现

接口性能下降:通过接口查询CSF调用链路日志信息,发现接口与Redis产品缓存的交互时长较昨日明显增加。

二、初步排查

1、系统变更核查:系统运维人员确认代码和配置均无任何变更。
2、新增配置检查:其他运维人员新增了产品相关配置,但经核查这些配置为前项限制,不会直接影响接口调用。

为快速解决问题,先将新增配置全量回退,到上一个版本

配置回退后,接口交互时间仍无明显变化,且其他渠道产品缓存交互的接口也出现变慢现象,问题并没有解决。

三、深入分析

接口逻辑:根据开发人员确认代码逻辑,接口内部查询产品信息时,首先查询JVM热区缓存,若无则查询Redis内部的信息。
调用量与耗时对比发现:,有问题的API接口调用量徒增了5倍,耗时也明显增加。
Redis集群状态:怀疑Redis集群存在问题,但因生产环境限制,未进行重启操作。

四、故障再现与排查

业务恢复与问题重现:第二天白天业务正常,接口调用量未明显增加。下午重新添加产品配置,18点刷新缓存后,出现大量超时。
配置回退效果:产品配置再次回退后,超时笔数减少。

五、根本原因分析与解决

故障分析:

Redis性能:根据log4x日志系统信息,Redis交互时间仍较长,但调用量减少后问题不明显。
JVM热区缓存:JVM热区缓存的桶大小产生频繁更新问题,更新机制存在问题。

解决措施:

调整JVM热区缓存:经讨论决定调整JVM热区缓存大小,由100M增加到110M。
代码发布与观察:代码发布后,观察API接口延时情况,至下一轮18:20时,接口延时问题明显改善,业务恢复正常。

六、总结

本次CRM系统接口超时故障是由于JVM热区缓存的桶大小设置不合理,导致在大量请求下性能下降。
通过调整JVM热区缓存大小,有效解决了接口延时问题,业务得以恢复。同时,也提示了在系统运维过程中,需要综合考虑各组件的性能和配置,确保系统稳定运行。

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值