Redis技术文章
-
Redis ZMPOP 适合把多个有序集合里的最高分或最低分成员一次取出并删除。本文用分片排行榜消费场景说明 COUNT、空结果、原子性、集群同槽和失败重试边界。330 收藏 -
Redis 在生成 RDB 快照时可能因 fork 和写时复制出现延迟抖动。本文从慢查询时间线、INFO persistence 指标和内存峰值入手,给出判断、避让与回滚方法。176 收藏 -
Redis ACL 不只是给用户加密码,还要把命令类别、键名范围和连接验证一起收紧。本文用 SETUSER 配置一个只读报表账号,核对 ACL LIST、ACL DRYRUN 与真实连接的权限边界。234 收藏 -
Redis Cluster 返回 MOVED 或 ASK 时,客户端都需要重定向,但两者代表的槽位状态并不相同。本文用槽位迁移现场拆开路由缓存、ASKING、重试次数和故障排查边界,帮助判断哪些响应可以自动跟随、哪些情况应该先查集群状态。191 收藏 -
Redis HINCRBY 报 WRONGTYPE 或 value is not an integer 时,从字段实际值、写入路径和修复风险三处排查,并给出可验证的迁移顺序。344 收藏 -
Redis 内存达到 maxmemory 后,淘汰策略决定哪些键先离开。本文从缓存实例的内存告警现场出发,解释 allkeys-lru、volatile-lru、allkeys-lfu 和 noeviction 的适用边界,并给出命中率、淘汰计数与回滚核对方法。420 收藏 -
Redis 的 EXPIRE 作用在整个 key 上,不能直接给同一个 HASH 的每个 field 设置独立 TTL。本文从用户会话属性和临时状态的场景出发,对比拆 key、时间戳字段、ZSET 索引三种设计,并给出清理任务、并发边界和验收方法。162 收藏 -
Redis 连接池偶发超时,不能只把超时时间调大。本文按命令执行、连接占用和网络往返三层排查,结合 INFO clients、CLIENT LIST 与 SLOWLOG 区分服务端慢、连接池耗尽和客户端等待。182 收藏 -
Redis 发现疑似大 key 后,先用 TYPE、OBJECT ENCODING 和 MEMORY USAGE 分层确认数据类型、内部编码与实际内存,再决定拆分、限流或迁移,避免只看字符串长度误判。267 收藏 -
Redis Pipeline 能减少网络往返,但批次过大可能让回复堆积、客户端内存上涨,甚至拉高尾延迟。本文用基线、批次对比和分位数验收说明什么时候该拆批。204 收藏 -
Redis Bitmap 很适合保存按天变化的签到状态,但连续天数不能直接用 BITCOUNT 代替。本文从日期偏移、补签规则和查询性能三个角度,给出可验证的存储方案与边界处理。332 收藏 -
Redis 出现偶发慢响应时,LATENCY DOCTOR 能把采样到的延迟事件整理成可读报告。本文从阈值设置、事件记录、报告解读和复核动作入手,区分服务端阻塞、慢命令与网络往返。369 收藏 -
Redis WATCH 只能在提交前发现被监视键发生变化,并不能保证事务一定成功。本文用并发写入示例拆开事务提交返回空数组、重试窗口和放弃重试的业务边界。165 收藏 -
Redis Stream 消费组出现消息堆积时,先用 XPENDING 判断待处理消息的数量、最老时间和消费者归属,再用 XAUTOCLAIM 接管超时消息,最后按小批量确认、失败重试和监控恢复顺序处理。439 收藏 -
Redis Cluster 扩缩容时,业务抖动通常不是迁移命令本身造成的,而是迁移窗口、客户端重定向、热点槽位和失败收尾没有被单独核对。本文用一套可回滚的检查顺序说明如何安排迁移、观察状态并复查失败槽位。367 收藏