手工清理缓存导致缓存雪崩

本文涉及的产品
云原生内存数据库 Tair,内存型 2GB
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Redis 版,经济版 1GB 1个月
简介: 手工清理缓存导致缓存雪崩

先说结论

大量缓存在同一时期失效,此时大量的流量会全部冲击到数据库上面,数据库有可能会因为承受不住而宕机

故障现象

问题影响现象:系统卡顿

故障处理过程

9:12监控群收到响应时间异常告警

image.png

image.png


9:18 通过ARMS查到的结果显示接口都比较快。

image.png


9:30 通过ARMS查到的接口只是显示health接口慢,还没有看到哪些服务慢,但是线上实际情况就是慢。

image.png

image.png

image.png



9:39 研发看到慢的接口(链路追踪)

image.png



9:44  测试从ARMS看到慢的接口

image.png



9:46 研发决定重启dyna服务

9:53 发现ARMS监控到的只有grpc接口,而目前调的都是ice接口,所以不能用ARMS看链路。

9:59 dyna重启好了

10:02 研发发现ARMS和Tracing的实时数据差距很大

image.png



10:19 通过查日志,发现确实很慢,而ARMS没有监控到,是因为ice接口没有被监控的缘故

image.png




11:29 查到日志里显示,是redis很慢

image.png


image.png


12:01 查到数据库的执行记录,发现表单加载次数多,2分钟内加载2000多次。

image.png


12:02 测试确认前天晚上发版时清除了表单的缓存。

确定原因,缓存清除后,早上客户使用时都从数据库加载,然后往redis写,所以会比较慢,同时redis响应也可以证明有大量数据在写。


故障原因

发版之后清除了dyna的redis缓存,导致使用时从数据库读取,而拖慢整体性能。


反思与改进方案

修复方案:

重启dyna服务(可能不用重启也可以慢慢变快)。

存在的问题:

1.不知道ARMS没有监控ice服务,所以一开始找错方向。

改进方案:

1.缓存清除可以指定key,而不是批量一次性清除。

  1. 缓存清除后,可以自动加载
  2. 改成gRPC服务
相关文章
|
2月前
|
缓存
Autojs4.1.0实战教程---快手极速版清理缓存
Autojs4.1.0实战教程---快手极速版清理缓存
59 1
|
10月前
|
缓存 JSON 前端开发
Web项目中,常用的几种清理浏览器缓存的方式
Web项目中,常用的几种清理浏览器缓存的方式
245 0
|
26天前
|
缓存 分布式计算 关系型数据库
数据管理DMS操作报错合集之当进行RDS实例的可用区迁移时,提示“缓存清理”是什么意思
数据管理DMS(Data Management Service)是阿里云提供的数据库管理和运维服务,它支持多种数据库类型,包括RDS、PolarDB、MongoDB等。在使用DMS进行数据库操作时,可能会遇到各种报错情况。以下是一些常见的DMS操作报错及其可能的原因与解决措施的合集。
|
5天前
|
缓存
鸿蒙实现获取应用缓存和清理缓存
鸿蒙实现获取应用缓存和清理缓存
8 0
|
9月前
|
缓存
uniapp清理app缓存
uniapp清理app缓存
86 0
|
2月前
|
存储 缓存 Linux
linux 自动定时清理缓存
linux 自动定时清理缓存
109 0
|
2月前
|
缓存
AutoJS4.1.0实战教程 ---火火视频极速版签到、清理缓存和自动评论
AutoJS4.1.0实战教程 ---火火视频极速版签到、清理缓存和自动评论
25 0
|
2月前
|
缓存
基于AutoJs的今日头条极速版清理缓存
基于AutoJs的今日头条极速版清理缓存
67 0
|
2月前
|
缓存
Autojs4.1.0实战教程---火山极速版清理缓存
Autojs4.1.0实战教程---火山极速版清理缓存
36 0
|
2月前
|
缓存 黑灰产治理
Autojs4.1.0实战教程---抖音极速版清理缓存
Autojs4.1.0实战教程---抖音极速版清理缓存
81 0