Redis技术文章
-
Redis AOF 重写时,内存风险主要看 fork 之后的 COW 增长,磁盘风险则要拆成剩余空间、写入吞吐和 fsync 排队。本文用 INFO、MEMORY STATS、df 与 iostat 建立一套可复用的判断清单。501 收藏 -
Redis Stream 的 XTRIM 只限制流中条目,不会自动解决消费组 PEL 积压。本文用 XLEN、XINFO GROUPS、XPENDING 区分问题,并给出 MAXLEN、ACKED、DELREF 的选择方法。501 收藏 -
Redis Lua 脚本不要只返回 OK 或空值。本文用固定的状态码与 payload 契约区分业务成功、状态冲突、条件未满足和命令执行错误,并给出 pcall 与 Go 客户端解析的迁移清单。493 收藏 -
Redis ZINCRBY 使用双精度浮点分值,直接累加小数可能出现展示误差。本文用两位小数积分榜演示整数缩放、历史数据修复和上线验收。490 收藏 -
用Redis ZSET的score保存到期时间,以唯一任务成员和幂等键控制重复入队,再通过原子领取、租约与退避重试处理消费者崩溃和延迟漂移。489 收藏 -
Redis 7.4 起可用 HEXPIRE 和 HPEXPIRE 为 Hash 字段设置独立 TTL。本文从版本确认、字段写入、TTL 返回值到 HSET 覆写陷阱,给出一套可执行的配置与排查方法。488 收藏 -
围绕 Redis Stream 消费组的 PEL,讲清 XAUTOCLAIM 的空闲阈值、批量 COUNT、返回游标、失效消息清理和 JUSTID 边界,并给出接管后幂等处理与 XACK 确认方案。485 收藏 -
Redis ZRANGEBYLEX 适合在 Sorted Set 成员分值相同的前提下按字典序取范围。本文用 redis-cli 演示边界符号、LIMIT 分页、游标衔接及 Redis 6.2+ 的 ZRANGE BYLEX 替代写法。482 收藏 -
Redis pipeline 返回结果与发送命令一一对应,但单条命令错误、连接中断和事务失败的执行边界不同。本文用响应下标、批次和重试策略说明如何判断哪些命令已执行。478 收藏 -
Redis Hash适合字段级读取和局部更新,JSON字符串适合整对象缓存;如果必须按JSONPath原子修改文档,再评估RedisJSON。本文用Go示例梳理三种方式的边界、过期策略和并发取舍。476 收藏 -
Redis BITFIELD 默认使用 WRAP;本文对比 WRAP、SAT、FAIL 的溢出语义,并从位宽、offset、作用范围和返回 nil 四个方向排查策略不生效。473 收藏 -
Redis Lua 脚本中的 key 必须通过 EVAL 的显式 key 参数传入,业务值放入 ARGV。本文用最小示例说明 numkeys 如何划分 KEYS 与 ARGV,并演示多 key 脚本的同槽检查。473 收藏 -
对比 Redis BITFIELD 的 WRAP、SAT、FAIL 溢出策略,说明位宽边界、策略作用域、返回值处理和循环计数、封顶计量、严格配额等选型场景。471 收藏 -
Redis XREADGROUP 使用 BLOCK 参数控制没有新消息时的等待时长:BLOCK 2000 表示最多等待 2 秒,BLOCK 0 表示无限等待;读取待处理消息时使用非 > 的 ID,BLOCK 不会生效。469 收藏 -
用 Redis Functions 封装单 SKU 库存扣减与成功回执,讲清重复请求、库存不足、TTL、Cluster 同槽、函数部署和故障恢复的幂等边界。468 收藏