Redis技术文章
-
数据库 · Redis | 5小时前 | 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 | 3天前 | 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 | 5天前 | 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 | 1星期前 | Redis · 安全配置 · 数据库运维 · ACL · 网络隔离 · Redis公网暴露 Redis protected-mode Redis ACL Redis安全配置 Redis审计
Redis 被直接暴露在公网,靠一个密码或 protected-mode 都不够。更稳妥的方案是让端口只对可信应用网络开放,再用 ACL 分配最小命令和 key 权限、启用所需的传输保护并保留配置审计。本文按 Redis 官方安全文档梳理风险和可验证的检查顺序。364 收藏 -
Redis 7.0 起,EXPIRE 可用 NX、XX、GT、LT 为过期时间加条件。NX 只给没有 TTL 的 key 首次设置过期,XX 只更新已有 TTL 的 key,GT 只允许延长,LT 只允许缩短。它们互斥;TTL 返回 -1 表示 key 存在但没有过期时间,-2 表示 key 不存在。把条件写清楚,才能避免续期任务意外把缓存窗口改乱。250 收藏 -
Redis Streams 消费者在确认消息前宕机时,消息会留在待确认列表。本文说明如何通过 XAUTOCLAIM 有节制地接管超时消息,并监控重试与清理结果。110 收藏 -
Redis 7.4 起支持给 Hash 的单个字段设置 TTL。本文用会话 token 场景说明 HEXPIRE、HTTL、条件更新和兼容检查,避免为了一个短期字段让整条 Hash 一起过期。366 收藏