Redis的大key问题导致redis请求超时

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: Redis的大key问题导致redis请求超时

故障原因

早上9:10-9:26 xx-prod出现报错,查看异常日志,发现有redis执行超时的情况,运维重启了三个org服务器,并增加了一个服务器,系统恢复正常,本次故障原因为redis请求超时导致请求出错

image.png

处理过程

9点13分查看日志,发现organization-service有running low告警,查看服务器的RT,发现有一台10.xxx.23.1的响应时间较长,排名靠前的请求的响应时间都超过了1s,查看redis诊断报告,发现网络出口流量出现100%的情况,存在读取时间过长的情况,推测是org服务单机连接redis查询超时导致请求响应缓慢引起故障,

9点23分 运维重启了所有org服务器,并加了一台服务器,系统恢复正常

image.png

image.png

image.png



暴露的问题

redis目前的占用空间比较大,部分key没有设置过期时间,某些key存在单个key的值较大的情况,需要对这些key做分析和优化


改进措施

1.定期分析redis中key的使用情况,对于不合理的情况考虑做优化,比如需要设置过期时间,大key是否可以做拆分等操作

2.增加关键服务的arms监控

3.生产环境redis慢请求优化

4.redis批量请求需要增加上限设置,补充规范


相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
2月前
|
缓存 监控 NoSQL
【Redis性能瓶颈揭秘】「调优系列」深入分析热Key的排查策略和解决方案
【Redis性能瓶颈揭秘】「调优系列」深入分析热Key的排查策略和解决方案
215288 11
|
2月前
|
存储 缓存 NoSQL
【Redis】Redis魔法:揭秘Key的自动消失术——过期删除机制解析
【Redis】Redis魔法:揭秘Key的自动消失术——过期删除机制解析
132 0
|
3月前
|
NoSQL Java Redis
面试01-Redis 如何从海量数据中查询出某一个 Key
面试01-Redis 如何从海量数据中查询出某一个 Key
96 0
|
5天前
|
存储 NoSQL Redis
【Redis】Redis如何实现key的过期删除
【Redis】Redis如何实现key的过期删除
|
2月前
|
NoSQL Java Redis
Spring Boot 监听 Redis Key 失效事件实现定时任务
Spring Boot 监听 Redis Key 失效事件实现定时任务
55 0
|
24天前
|
NoSQL Shell Redis
批量迁移redis实例的key
批量迁移redis实例的key
|
1月前
|
NoSQL Java Redis
SpringBoot中操作RedisTemplate获取redis中以某些字符串为前缀的KEY列表
SpringBoot中操作RedisTemplate获取redis中以某些字符串为前缀的KEY列表
31 0
|
2月前
|
存储 NoSQL 算法
Redis中删除过期Key的三种策略
Redis中删除过期Key的三种策略
30 0
|
3月前
|
NoSQL Java Redis
Spring boot 实现监听 Redis key 失效事件
【2月更文挑战第2天】 Spring boot 实现监听 Redis key 失效事件
81 0
|
3月前
|
NoSQL Java Redis
springboot整合redis过期key监听实现订单过期操作
springboot整合redis过期key监听实现订单过期操作
80 0