Redis技术文章
-
Redis 8.6 Streams 通过 IDMP 和 IDMPAUTO 支持幂等生产。本文区分生产去重与消费副作用,说明 pid、iid、有限追踪窗口、配置变更及旧客户端兼容边界,并提供原样重试示例。373 收藏 -
Redis Cluster 执行 Lua 脚本时,key 未显式声明或多个 key 不在同一 hash slot 都可能触发跨槽错误。本文用 KEYS、ARGV 和 hash tag 设计一套可落地的避免方式。371 收藏 -
Redis Stream 消费组确认消息应放在业务处理成功之后。本文解释 XREADGROUP、PEL 与 XACK 的关系,分析确认返回 0、积压和消费者故障场景,并给出 XPENDING、XAUTOCLAIM 的处理方式。371 收藏 -
Redis XADD 的 LIMIT 不是 Stream 的最终长度限制,而是配合 MAXLEN 或 MINID 裁剪时控制单次工作量的参数。本文说明 ~、LIMIT、精确裁剪和 count 取值的关系。371 收藏 -
Redis t-digest的COMPRESSION用于权衡分位数估算精度与内存。本文通过两种配置的命令示例,说明相同样本、INFO内存记录、分位数基线及空摘要的处理边界,避免套用固定误差承诺。370 收藏 -
Redis GETBIT 读取不存在的 key 或超出字符串范围的 offset 时会把未定义位置视为 0,因此返回 0 不等于命令失败。本文从参数语义、正常返回、错误分支和 Go 调用示例说明如何正确处理。367 收藏 -
Redis 客户端缓存虽然能减少网络往返,但本地副本不会自动知道服务端数据已经改变。本文说明 tracking 如何按读取过的 key 发送失效通知,比较默认模式与广播模式,并给出断线、连接池和热点写入时的选择建议。367 收藏 -
Redis OBJECT FREQ 只能在 LFU 策略下读取对象的对数访问频率计数。本文按配置、key 生命周期、RESP 返回和业务边界排查整数、空值与异常结果。366 收藏 -
从客户端 GET、判断、DECRBY 的竞态出发,说明 Redis Lua 如何把检查与更新放入同一次原子执行,并给出 KEYS、ARGV、EVALSHA、NOSCRIPT 和脚本长度的迁移清单。363 收藏 -
Redis ACL CAT 能列出权限分类和分类内命令。本文比较分类授权、增量组合与逐条命令三种做法,并给出缓存账号的实际配置顺序与复核方法。361 收藏 -
用 INFO stats、memory、keyspace 三组指标和时间窗口差值,区分 Redis 的 maxmemory 驱逐、TTL 过期与 noeviction 拒写。360 收藏 -
Redis 8.0.0 及以上可用 HGETEX 在读取 Hash 字段的同时更新过期时间。本文说明 EX、PX、EXAT、PXAT、PERSIST 和 FIELDS 的组合方式,并用 HTTL 区分字段仍在、无 TTL 与已经过期。357 收藏 -
Redis SCAN 不是快照查询:本文用游标结束条件、动态键变化、重复消费、MATCH 与 COUNT 说明如何判断遍历结果并设计安全处理策略。357 收藏 -
Redis Hash 更新单字段默认使用 HSET;本文对比 HSETNX、HINCRBY 和多字段 HSET 的适用边界,并说明 HGET、HGETALL、返回值与 WRONGTYPE 的排查方法。354 收藏 -
Redis 7.4 及以上可以用 HTTL 查询 hash 字段的剩余秒数。本文从字段级过期的适用边界出发,讲清 FIELDS 参数、-1 与 -2 返回值、HPTTL 精度选择,以及怎样把查询结果接入清理和监控。354 收藏