Redis技术文章
-
用一个缓存服务和一个报表读取服务的例子,拆解 Redis ACL 中用户、命令集合与 key pattern 的关系,并用 ACL DRYRUN 验收最小权限。251 收藏 -
Redis XCLAIM 的 min-idle-time 是消息可被接管的毫秒门槛,本文结合 XPENDING、IDLE、JUSTID 和 XACK 说明如何判断重试条件与验证接管结果。250 收藏 -
Redis ACL LOG 能集中查看最近的认证失败和权限拒绝事件。本文用最小命令演示如何读取 reason、username、client-info 等字段,并说明 RESET 的使用边界。248 收藏 -
删除包含大量元素的 Redis Key 时,DEL 会把回收工作压在主线程,UNLINK 则先解除 Keyspace 引用,再由后台线程回收对象。本文用 redis-cli 和 lazyfree_pending_objects 拆解两者的边界、观测方法与回滚检查。247 收藏 -
Redis MEMORY USAGE 返回的是单个键及其值的内存估算,不等于整个实例的 used_memory。理解默认 SAMPLES 5、SAMPLES 0 和 INFO memory 的边界,才能正确判断嵌套对象与容量问题。242 收藏 -
本文用 GEOSEARCH 演示 Redis 地理距离筛选,说明 FROMLONLAT、BYRADIUS、ASC、COUNT、WITHDIST 和 WITHCOORD 的组合方式,并排查空结果、单位误读、坐标顺序和 ANY 截断问题。242 收藏 -
用 Redis HSCAN 的 cursor 循环渐进读取大型 Hash,解释 COUNT、MATCH、NOVALUES 的边界,以及数据变化时如何用幂等处理降低重复和漏读风险。237 收藏 -
Redis 7.4 以后可以给 Hash 的单个 field 设置过期时间。本文说明 field 到期后 HGETALL 的实际返回、空 Hash 判断,以及用 HTTL 排查 HSET 覆盖清除 TTL 的方法。236 收藏 -
介绍 Redis Sentinel 通过服务名获取当前主节点地址的配置与客户端实现,覆盖切换刷新、连接重建、端口映射和异步复制边界。236 收藏 -
Redis WATCH 事务被放弃时,不要盲目重试所有错误。本文用 Go 示例说明如何识别 TxFailedErr、保持事务连接、设置退避上限并完成反向验证。230 收藏 -
用 Redis Lua 脚本把库存校验、扣减和请求记录写入放进同一次执行,配合 KEYS、ARGV、返回码与幂等记录处理重复请求、库存不足和集群键位边界。226 收藏 -
Redis 修改 maxmemory-policy 后,应先用 CONFIG GET 确认运行时策略,再用 INFO stats 记录 evicted_keys 差值。本文给出策略变更、持久化和淘汰计数判断方法。223 收藏 -
Redis Cluster 遇到 CROSSSLOT 时,先用 CLUSTER KEYSLOT 找出不同槽位,再用业务 ID hash tag 重构相关 key,并评估迁移与热点风险。218 收藏 -
从 AOF 多部分文件、fork 与 Copy-on-Write、fsync 和 INFO persistence 指标入手,说明重写期间磁盘增长与延迟抖动的来源,并给出配置和排查方法。218 收藏 -
Redis Lua 的优势是减少网络往返并保持原子性,代价是脚本运行期间会占用主线程。本文用有界循环、KEYS/ARGV、SLOWLOG、延迟历史和脚本缓存调用,给出一套可执行的收敛与拆分判断方法。216 收藏