Redis技术文章
-
Redis Lua 脚本不要只返回 OK 或空值。本文用固定的状态码与 payload 契约区分业务成功、状态冲突、条件未满足和命令执行错误,并给出 pcall 与 Go 客户端解析的迁移清单。493 收藏 -
讲清 Redis Cluster 中多 key Lua 的同槽条件:用 hash tag 设计相关 key,正确区分 EVAL 的 KEYS 与 ARGV,并用 CLUSTER KEYSLOT 做发布前检查。491 收藏 -
只需要多个 Redis 集合的去重总数时,不必先用 SUNION 拉回全部成员。Redis 8.10 的 SUNIONCARD 直接返回并集基数,并可用 LIMIT 或 APPROX 控制统计边界。490 收藏 -
Redis ZINCRBY 使用双精度浮点分值,直接累加小数可能出现展示误差。本文用两位小数积分榜演示整数缩放、历史数据修复和上线验收。490 收藏 -
Redis Array 用整数索引保存可稀疏分布的字符串,随机访问不受逻辑长度影响。本文通过 ARSET、ARGET、ARLEN、ARCOUNT 与 ARSCAN 说明建模方式、读取边界和兼容性取舍。490 收藏 -
Redis GEOSEARCH 适合做附近门店、配送站点和地理围栏的初筛,但经度纬度顺序、米与千米单位、BYRADIUS 与 BYBOX、排序和边界结果都容易写错。本文用一组可复现的门店数据说明查询写法、结果核对与生产边界。489 收藏 -
用Redis ZSET的score保存到期时间,以唯一任务成员和幂等键控制重复入队,再通过原子领取、租约与退避重试处理消费者崩溃和延迟漂移。489 收藏 -
Redis 的 XADD 默认会在 key 不存在时创建 Stream;NOMKSTREAM 可以禁止这次隐式创建,并用空返回提醒调用方先完成初始化。489 收藏 -
Redis 7.4 起可用 HEXPIRE 和 HPEXPIRE 为 Hash 字段设置独立 TTL。本文从版本确认、字段写入、TTL 返回值到 HSET 覆写陷阱,给出一套可执行的配置与排查方法。488 收藏 -
围绕 Redis Stream 的 XTRIM MINID 说明按 ID 截断的保留边界,区分精确与近似裁剪,解释 LIMIT 和消费组引用策略,并给出 XRANGE、XINFO 的复查方法。488 收藏 -
用 Redis INCRBYFLOAT 做累计值时,重点不是把返回值当金额类型,而是核对输入格式、字符串结果、浮点误差和业务落库边界。487 收藏 -
Redis WATCH 在被监视键发生并发修改时让 EXEC 放弃排队事务。用双连接示例说明空回复、连接绑定、重读重算与清理,并区分冲突、命令错误和断线结果未知。486 收藏 -
围绕 Redis Stream 消费组的 PEL,讲清 XAUTOCLAIM 的空闲阈值、批量 COUNT、返回游标、失效消息清理和 JUSTID 边界,并给出接管后幂等处理与 XACK 确认方案。485 收藏 -
Redis 广播模式不会天然少发失效消息,它用前缀表替代逐键跟踪。要减少无关通知,应设计稳定且不重叠的键前缀,按客户端缓存域配置 PREFIX,并处理 NOLOOP、连接断开和读写竞态。484 收藏 -
Redis ZSET 按分数查询优先使用 ZRANGE ... BYSCORE,旧版本可用 ZRANGEBYSCORE。本文说明闭区间、开区间、无界范围、倒序、WITHSCORES、LIMIT 和 ZCOUNT 的写法,并解释如何控制返回量。484 收藏