Redis技术文章
-
库存接口最难处理的不是把数字减一,而是让调用方准确区分扣减成功、重复请求、库存不足和参数错误。本文用 Redis Lua 原子脚本统一返回码,并给出 Go 服务端的参数、错误和兼容设计。346 收藏 -
Redis 客户端出现 NOAUTH 或权限拒绝时,先用 ACL GETUSER 查看用户状态、密码规则和命令类别,再用最小权限验证实际业务命令。本文给出一套不改业务数据的排查顺序。346 收藏 -
Redis Sorted Set 用 ZRANGE BYSCORE 做时间范围分页时,重复分数和闭区间很容易让数据重复或漏掉。本文从线上分页现场出发,给出 score 加 member 的边界游标写法、复查命令和回滚判断。405 收藏 -
数据库 · Redis | 1星期前 | Redis · go · Pipeline · 批处理 · 重试 · 幂等性 · 重试 go-redis 幂等键 批量写入 Redis Pipeline 逐条结果
Redis Pipeline 能减少网络往返,却不会把一批命令变成事务。用 go-redis 演示批量写入的部分成功、结果核对、可安全重试的边界,以及如何用幂等键避免重试造成重复副作用。391 收藏 -
Redis 8.8 带来原生 Array 数据结构,适合滚动窗口、按索引读取和范围聚合。本文用一组最小命令验证它与 List 的差异,并给出从 List 迁移前应检查的读写边界、客户端支持和回滚办法。154 收藏 -
Redis Functions 从 7.0 开始为服务端逻辑提供了可加载、可复用的库模型,但它不是所有 Lua 脚本的直接替代。本文用请求级脚本调用、FUNCTION LOAD、FCALL 和集群键约束拆出迁移边界。386 收藏 -
Redis RESP3 不是把 RESP2 换个版本号,而是会改变部分命令的返回类型。本文用 Go 和 go-redis 拆开 HGETALL 的 map/array 差异,给出升级判断、解析边界和灰度验证办法。127 收藏 -
Redis Stream 消费者组出现积压时,先用 XPENDING 区分未分配消息和已分配未确认消息,再按 idle 时间和重试次数决定 XAUTOCLAIM、人工核查还是进入重试队列。本文用可复现的订单事件示例梳理定位、接管与回滚边界。422 收藏 -
Redis 分布式锁最危险的 bug 不是没加锁,而是释放时删掉了后来持有者的锁。本文从锁过期、业务变慢和重复释放的现场出发,说明唯一令牌如何确认所有权,再用 Redis Lua 脚本把校验与删除放进同一个原子动作,最后补上续期、超时和故障恢复边界。326 收藏 -
Redis Stream 消费组出现 pending 积压时,先用 XPENDING 看数量和空闲时间,再用 XAUTOCLAIM 接管超时消息,最后通过幂等、分批和回滚把积压安全排空。494 收藏 -
数据库 · Redis | 2星期前 | Redis · 缓存 · 限流 · Redis 8.8 · INCREX · Redis 8.8 INCREX Redis窗口限流 Redis计数器 ENX UBOUND
Redis 8.8 新增 INCREX,把计数、上限和过期时间放进一个原子命令。文章用 redis-cli 演示 60 秒窗口限流,解释 UBOUND、ENX、SATURATE 的差别,并给出旧版本回退方案与检查边界。123 收藏 -
数据库 · Redis | 2星期前 | Redis · 缓存 · go · Redis Cluster · 排错 · Redis Cluster CROSSSLOT Hash Tag MGET CLUSTER KEYSLOT
商品详情页把库存、价格和活动状态合成一次 MGET 后,在 Redis Cluster 里突然报 CROSSSLOT,根因往往不是客户端,而是同一业务实体的 Key 没有落到同一个槽位。本文用 CLUSTER KEYSLOT、Hash Tag 和迁移期检查拆出一条可复查的修复路径。259 收藏 -
线上 Redis 里堆积了过期业务前缀或历史缓存时,不能直接用 KEYS 和 DEL 硬删。用 SCAN 分批遍历、先记录样本、按速率提交 UNLINK,并保留停止开关和统计结果,能把清理风险压到可控范围。183 收藏 -
热点商品详情被每个接口实例重复读取时,可以用 Redis 的 CLIENT TRACKING 把副本留在进程内存,同时接收键变更失效消息。文章给出 BCAST 前缀划分、失效处理和断线回收的实战流程。413 收藏 -
数据库 · Redis | 3星期前 | Redis · 安全配置 · 数据库运维 · ACL · 网络隔离 · Redis公网暴露 Redis protected-mode Redis ACL Redis安全配置 Redis审计
Redis 被直接暴露在公网,靠一个密码或 protected-mode 都不够。更稳妥的方案是让端口只对可信应用网络开放,再用 ACL 分配最小命令和 key 权限、启用所需的传输保护并保留配置审计。本文按 Redis 官方安全文档梳理风险和可验证的检查顺序。364 收藏