Redis技术文章
-
用 INFO stats、memory、keyspace 三组指标和时间窗口差值,区分 Redis 的 maxmemory 驱逐、TTL 过期与 noeviction 拒写。360 收藏 -
Redis ZRANGE 分页不能只记住 offset:先理解 score 主排序和同分 member 的字典序,再根据是否允许同分跨页选择 BYSCORE 游标、同分 BYLEX 索引或 rank 分页。435 收藏 -
Redis HRANDFIELD 可以从 Hash 中随机取一个或多个字段。本文区分不带 count、正负 count 与 WITHVALUES 的返回边界,并说明它与 HGETALL、HSCAN 的使用差异。299 收藏 -
Redis pipeline 部分命令失败时,应逐条映射回复,区分命令错误与连接异常造成的未知结果。结合 redis-py 非事务示例,说明错误对象、底层重试、非幂等写入和日志记录的处理范围。213 收藏 -
Redis Cluster 执行 Lua 脚本时,key 未显式声明或多个 key 不在同一 hash slot 都可能触发跨槽错误。本文用 KEYS、ARGV 和 hash tag 设计一套可落地的避免方式。371 收藏 -
Redis SET 可以在一次命令中组合 NX 与 EX 或 PX:只有键不存在时写入,并同时建立过期时间。本文说明返回值、时间单位、锁值和续期边界。228 收藏 -
Redis TTL 的 -1 表示键存在但没有到期时间,-2 表示键不存在。通过独立测试样本和原始整数分类工具,区分移除到期时间与删除键,说明 PTTL 单位、查询竞态及缺失原因的判断限制。223 收藏 -
Redis Cluster 中的 WATCH/MULTI/EXEC 事务要求相关 key 落在同一 hash slot。本文用实体标签、租户标签和分桶标签比较命名方案,并给出设计期检查与热点规避方法。198 收藏 -
讲清 Redis Cluster 中多 key Lua 的同槽条件:用 hash tag 设计相关 key,正确区分 EVAL 的 KEYS 与 ARGV,并用 CLUSTER KEYSLOT 做发布前检查。491 收藏 -
围绕 Redis Stream 的 XTRIM MINID 说明按 ID 截断的保留边界,区分精确与近似裁剪,解释 LIMIT 和消费组引用策略,并给出 XRANGE、XINFO 的复查方法。488 收藏 -
Redis SMISMEMBER 会按照请求成员的顺序返回 0/1 数组。本文用 redis-cli 和 Go 示例说明如何稳定映射结果,并处理缺失 key、重复成员与批量成本。461 收藏 -
Redis 7.0 起,XAUTOCLAIM 可在扫描时清理消息体已不存在的 PEL 引用,并通过第三段返回 deleted IDs。本文说明三段返回、扫描游标、认领权限与日志分类,并提供独立测试流示例。475 收藏 -
Redis XREADGROUP 的 COUNT 按每条 Stream 限制返回条数,多流读取时总量可能随流数增长;Redis 8.10 起可用 MAXCOUNT 设置跨所有流的累计条数上限,并用 MAXSIZE 控制回复体积。244 收藏 -
Redis GETEX 可以在返回字符串值的同时设置或移除过期时间。本文用 EX、PX、EXAT、PXAT 和 PERSIST 区分相对与绝对过期,并说明空 key、错误类型和写权限边界。234 收藏 -
围绕 Redis EVALSHA 返回 NOSCRIPT 的场景,说明脚本缓存为什么会缺失,如何用 SCRIPT EXISTS、SCRIPT LOAD 和 EVAL 完成有边界的回退,并区分摘要错误、实例切换、权限错误与执行超时。106 收藏