redis莫名数据被清问题排查记录
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,新版系统刚发布,前端反馈redis中的值经常被清空,第一反应怀疑谁的代码里面执行了flushall或者flushdb操作通过redis的monitor追踪一波,redis-cli -a "xxx" m
千家信息网最后更新 2025年12月01日redis莫名数据被清问题排查记录
新版系统刚发布,前端反馈redis中的值经常被清空,第一反应怀疑谁的代码里面执行了flushall或者flushdb操作
通过redis的monitor追踪一波,
redis-cli -a "xxx" monitor 如果redis没配置密码可以不用加-a参数,实际操作中我加了个 >> /data/log/trace_redis.log,把所有操作写到文件里面,注意时间长了log会很大
跑下来redis确实会被清掉,但没人/程序执行过flush操作,这里停顿5分钟思考下人生
这里幸亏之前转过一个zabbix监控,有监控redis的使用内存,结果发现redis的内存使用情况:
redis会短时间飙到10G,然后马上掉下来,这时候基本可以判定应该跟内存有关,达到某个阈值之后数据被清了。
去翻redis官网有详细记录:https://redis.io/topics/lru-cache
文档查下来确实是因为reids有内存限制,我们这里是10G,并且有超内存之后的清除策略默认是全清。。。
翻开 /etc/redis.conf (实际路径可能不同)
就这里了,maxmemory设置redis最大使用内存,maxmemory-policy决定超过之后怎么清
Redis提供6种数据淘汰策略: 1. volatile-lru:从已设置过期时间的内存数据集中挑选最近最少使用的数据 淘汰; 2. volatile-ttl: 从已设置过期时间的内存数据集中挑选即将过期的数据 淘汰; 3. volatile-random:从已设置过期时间的内存数据集中任意挑选数据 淘汰; 4. allkeys-lru:从内存数据集中挑选最近最少使用的数据 淘汰; 5. allkeys-random:从数据集中任意挑选数据 淘汰; 6. no-enviction(驱逐):禁止驱逐数据。(默认淘汰策略。当redis内存数据达到maxmemory,在该策略下,直接返回OOM错误); 关于maxmemory设置,通过在redis.conf中maxmemory参数设置,或者通过命令CONFIG SET动态修改 关于数据淘汰策略的设置,通过在redis.conf中的maxmemory-policy参数设置,或者通过命令CONFIG SET动态修改当然这是redis上的策略,实际追踪发现有个程序一直往redis里面push数据导致的上面的现象,问题解决
数据
内存
策略
时间
参数
实际
动态
命令
程序
监控
问题
不同
很大
最大
下人
不用
代码
前端
密码
情况
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
关于关系型数据库的表述正确的有
小年糕互联网科技有限公司
服务器品牌竞争
安卓金融软件开发
互联网新零售交泰科技
数据库where是干嘛的
网络安全事故事后处理案例
金万维客户端连接不上服务器会话
公安部网络安全保卫局负责
wallet数据库连接
湖北武汉的软件开发公司
机关开展网络安全大检查
抖音上的mc服务器
网络安全大会亮点
三星云相册服务器图片
APP软件网络安全风险管理
南宁老牌软件开发公司
软件开发对电脑配置要求高吗
数据库行业分析
宁海嵌入式软件开发流程
安仁学it软件开发培训
discuz发布文章数据库
互联网科技与生活
qq代理服务器2016
安徽智能边缘计算服务器什么价位
我国数据库发展阶段
简述重用驱动软件开发过程
世界服务器由谁管理
网络安全主要有哪些工作岗位
黑龙江网络技术开发哪家好