当前位置:首页 > AI技术 > 正文内容

Redis 怎样防止主从节点淘汰行为不一致|Duuu笔记

admin2个月前 (04-01)AI技术51

主从节点淘汰策略必须完全一致,否则必然导致数据不一致;需统一maxmemory-policy、maxmemory值,确保read_only开启,并避免从节点写操作及运行时配置变更。

主从节点淘汰策略必须完全一致,否则数据不一致是必然的

Redis 主从复制不保证淘汰行为同步——淘汰是本地行为,从节点不会复刻主节点的

DEL

EVICT

操作。如果主从配置不同,比如主用

allkeys-lru

、从用

volatile-ttl

,同一时刻内存满时,两者会删掉完全不同的 key,后续读从库就可能命中脏数据或空值。

检查并统一

maxmemory-policy

配置项

这是最常见也是最致命的差异点。只要主从的

maxmemory-policy

值不一致,淘汰就不一致。

redis-cli -h {host} -p {port} config get maxmemory-policy

分别查主从值,确认完全相同(包括大小写)

noeviction

虽安全但容易写失败,生产环境慎用;

allkeys-*

类策略比

volatile-*

更可控,因后者依赖 TTL,而很多业务根本没设 TTL

配置文件里写死比运行时

config set

更可靠——后者重启即丢失,且主从不同步执行

config set

会导致瞬时不一致

注意

maxmemory

设置与实际可用内存的偏差

即使策略一致,若主从

maxmemory

值不同,触发淘汰的时机就不同。更隐蔽的问题是:Linux overcommit、Redis 自身内存碎片、AOF rewrite 临时内存占用,都会让“实际可分配内存” ≠

maxmemory

主从节点的

maxmemory

必须数值相等,建议用绝对值(如

2gb

),避免用百分比或相对单位

监控

used_memory_peak_human

mem_fragmentation_ratio

,如果从节点碎片率长期 > 1.5,说明它更早触发淘汰——不是策略问题,是内存管理效率差异

开启

activedefrag yes

可缓解碎片,但仅限 Redis 4.0+,且 CPU 开销明显,需权衡

从节点写操作(如

read_only no

)会彻底破坏一致性

哪怕淘汰策略和内存限制全一致,只要从节点被误设为可写(

read_only no

),它自己删 key、写 key 的行为就和主节点无关了。这种不一致无法通过复制修复。

检查

redis-cli config get slave-read-only

(旧版)或

config get replica-read-only

(6.0+),确保返回

yes

禁止在从节点执行

flushdb

del

expire

等任何修改数据的命令——这些操作不会同步到主,也不会触发主的淘汰逻辑

运维脚本或监控告警中,应把

role:slave

+

connected_slaves:0

+

slave_read_only:0

组合作为高危信号

真正难防的不是配置漏改,而是“策略一致但行为不一致”:比如主节点因客户端连接数多、请求响应快,提前触发淘汰;从节点因复制延迟积压大量待处理命令,内存涨得慢、淘汰来得晚。这种时间差导致的短暂不一致,只能靠应用层容忍或降级策略兜底。

相关文章

神经网络分类总结

从网络性能角度可分为连续型与离散型网络、确定性与随机性网络。 从网络结构角度可为前向网络与反馈网络。 从学习方式角度可分为有导师学习网络和无导师学习网络。 按连续突触性...

一文讲清神经网络、BP神经网络、深度学习的关系

人工神经网络中的顶级代表。往往说《神经网络》就是指《BP神经网络》。 大家研究着各种神经网络,研究得不亦乐乎, 来了两个家伙Romelhart 和Mcclelland,...

AI实战详解:Perplexity 怎么做市场调研 Perplexity 市场分析实操教程【商业】最佳实践|Duuu笔记

掌握Perplexity AI市场调研需五步:一、结构化提问嵌入地域/时间/主体/指标四要素;二、限定PDF等原始信源提升可信度;三、分步提问生成制表符分隔文本以自动导入Excel;四、启用Pro S...

深入理解前端开发:零基础教程:怎么用 Gemini 自动生成短视频脚本与拍摄大纲完全指南|Duuu笔记

需明确输入指令、理解输出逻辑并合理拆解内容:一、构建含角色/任务/格式等要素的提示词;二、追加分镜与时间轴约束优化专业性;三、转译为带道具编号与颜色标记的执行清单;四、用Gemini校验注意力断点并迭...

前端开发实战详解:骡子快跑如何生成会议纪要 骡子快跑语音转文字整理技巧最佳实践|Duuu笔记

使用听脑AI转写、骡子快跑生成纪要、影子跟读校验、自定义术语词典及EcomGPT-CNN情绪风险分析,五步实现会议纪要高效精准产出。 ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量...

深入理解AI:避坑实战:如何纠正 在执行 Prompt 时的幻觉与逻辑错误完全指南|Duuu笔记

有效纠偏AI幻觉的关键在于任务设计源头切断错误条件:明确角色权限禁令、硬性规定输出格式、使用精确动词、分步推理并嵌入检查点、提供带纠错痕迹的小样本示例、设置输出自检环节。 ☞☞☞AI 智能聊天, 问...

发表评论

访客

看不清,换一张

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