Redis技术文章
-
Redis 连接数打满时,先用 INFO clients 和 CLIENT LIST 区分真实并发、空闲连接与连接池泄漏,再核对 maxclients,最后分时回收异常连接并修正池配置。140 收藏 -
用 Redis INFO commandstats 拆解单命令 CPU 异常,理解 calls、usec、usec_per_call、failed_calls 与采样窗口的关系,并给出可复核的排查流程。135 收藏 -
给一个需要同时写入多个 Redis 字符串键的初始化场景,说明 MSETNX 为什么能做到全成全败、返回 0 时如何定位已存在键,以及单机原子语义在集群多键操作中的边界。189 收藏 -
Redis ZSet 适合按时间分拣延迟任务,但先用 ZRANGEBYSCORE 读取、再用 ZREM 删除会留下并发抢占窗口。本文从两个 worker 同时取到同一 job_id 的现场出发,说明如何用 Lua 把筛选与删除放进一次原子操作,并保留重复执行与故障恢复边界。192 收藏 -
用 Redis HINCRBY 为哈希字段做原子计数,验证键和字段不存在时的初始化行为,并处理非整数值与 64 位整数边界。351 收藏 -
数据库 · Redis | 1星期前 | Redis · hash · 数据生命周期 · 缓存过期 · Redis 7.4 · redis Hash HEXPIRE HPTTL 字段过期 Redis 7.4
Redis 7.4 的 HEXPIRE 可以只给 Hash 中指定字段设置过期时间,适合拆分会话或临时属性的生命周期。本文用 HSET、HEXPIRE、HPTTL 和 HGETALL 核对 FIELDS 参数、返回值、版本边界与常见误区。450 收藏 -
Redis Sentinel 切主后客户端频繁重连,通常要从主观下线、+switch-master 事件、服务发现和连接池旧连接四个边界排查;本文给出一次可回滚的定位路径。409 收藏 -
Redis 设置了 EXPIRE 后,键并不一定在到点瞬间从内存消失。本文从 TTL 读数、访问触发的惰性删除和后台主动过期检查入手,说明为什么会看到过期键,以及怎样用命令判断问题究竟在观察方式、访问路径还是过期清理压力。122 收藏 -
数据库 · Redis | 1星期前 | Redis · 消息队列 · Stream · 消费组 · 重试 · XAUTOCLAIM · redis streams XPENDING XAUTOCLAIM PEL pending JUSTID
Redis Streams 里,XAUTOCLAIM 只负责把空闲消息转交给新消费者,不能替代 XACK,也不会自动清空 PEL。本文用 redis-cli 拆开 JUSTID、XPENDING、XACK 与 XDEL 的边界,给出重试后验收消息是否真正收口的检查路径。501 收藏 -
Redis 向量检索不是把 KNN 数字改大就能得到稳定结果。使用 FT.SEARCH 时,应先明确过滤条件、DIALECT 2 和 HYBRID_POLICY 的关系,再根据候选规模选择 ADHOC_BF 或 BATCHES,并检查距离排序是否符合业务语义。474 收藏 -
Redis 线上重启时,RDB 与 AOF 会走不同的恢复路径。本文用一个可复现的 Go 检查程序拆开两种持久化方式的边界,说明如何按数据恢复目标选择配置。500 收藏 -
Redis WAIT 等待副本确认,WAITAOF 等待本地或副本 AOF fsync;两者都不能把异步复制变成强一致,选择时要先分清复制安全与磁盘持久化目标。327 收藏 -
数据库 · Redis | 1星期前 | Redis · 集群 · 命令解析 · 排障 · redis COMMAND GETKEYSANDFLAGS COMMAND GETKEYS 集群路由 键位分析
Redis 集群接入新命令前,先用 COMMAND GETKEYSANDFLAGS 解析完整命令里的键和访问属性。本文用 MSET、LMOVE 与带参数命令说明如何核对 key positions、key flags,并把结果接入集群路由预检。353 收藏 -
Redis ZDIFFSTORE 会把第一个有序集合中不属于后续集合的成员写入目标键。本文用候选榜与已处理榜说明差集的成员边界、分值保留规则、空结果和集群同槽核验。112 收藏 -
Redis Functions 会把 Lua 逻辑作为函数库保存。本文用一个订单状态校验函数说明 FUNCTION LOAD、REPLACE、FUNCTION LIST 和 FUNCTION DELETE 的切换边界,给出发布前验收与失败回滚顺序。379 收藏