Redis技术文章
-
Redis 7.4 起支持给 Hash 的单个字段设置 TTL。本文用会话 token 场景说明 HEXPIRE、HTTL、条件更新和兼容检查,避免为了一个短期字段让整条 Hash 一起过期。366 收藏 -
Redis 被直接暴露在公网,靠一个密码或 protected-mode 都不够。更稳妥的方案是让端口只对可信应用网络开放,再用 ACL 分配最小命令和 key 权限、启用所需的传输保护并保留配置审计。本文按 Redis 官方安全文档梳理风险和可验证的检查顺序。364 收藏 -
Redis HyperLogLog 用固定空间估算去重数量,本文用 PFADD、PFCOUNT 和 PFMERGE 说明误差、分片合并及适用边界。364 收藏 -
Redis Pub/Sub 采用至多一次投递,订阅端断线期间消息不会保留。本文用最小命令和排查表说明何时继续用 Pub/Sub,何时切换 Streams 或采用混合方案。363 收藏 -
Redis LATENCY DOCTOR 只分析实例内部延迟事件,业务接口耗时还包含网络、连接池、序列化和下游调用。本文用 LATEST、HISTORY、慢日志与应用指标对齐排查,并说明 LATENCY RESET 的证据风险。363 收藏 -
Redis Pub/Sub 断线后不能补回已经错过的消息。本文解释至多一次投递的原因,并用 Redis Streams 消费组设计可补读的可靠事件方案。362 收藏 -
Redis 连接数量一多,只看地址和用户名很难判断请求来自哪个客户端库。本文用 Redis 7.2 引入的 CLIENT SETINFO 设置 LIB-NAME、LIB-VER,再通过 CLIENT LIST 和 CLIENT INFO 核对连接来源,并处理旧版本兼容。361 收藏 -
介绍 Redis CLIENT TRACKING 的 BCAST 模式,说明如何用 PREFIX 接收客户端缓存失效通知,并处理 RESP2 重定向、NOLOOP、前缀重叠和通知连接断开等边界。361 收藏 -
Redis ACL DRYRUN 可以在不执行命令的情况下模拟用户权限。本文从 ACL SETUSER 配置命令权限和密钥模式,逐项验收读写边界、拒绝原因与上线前回归。359 收藏 -
Redis Cluster 的多键命令要求相关键位于同一 hash slot。本文用 hash tag 设计键名,再用 CLUSTER KEYSLOT 排查空标签、嵌套花括号和模板不一致等问题。358 收藏 -
Redis ZRANGE 查询结果与预期不一致时,先区分 WITHSCORES 返回形状、REV 反向排序和 LIMIT 分页边界,再用可复现的命令核对索引位置与游标。357 收藏 -
Redis Cluster 的多 key 命令、MULTI/EXEC 和 Lua 脚本要求相关 key 落在同一 hash slot。本文用 Hash Tag 设计用户级 key,给出 MSET、事务与脚本的选择方法,并说明 CROSSSLOT、TRYAGAIN、热点和重分片边界。357 收藏 -
Redis Sentinel 触发故障转移后,看到某个 Sentinel 报了 SDOWN 并不代表切换已经完成。本文用 ROLE、INFO replication、SENTINEL master 和 switch-master 事件,核对 ODOWN、主节点提升、从节点重挂与应用重连四个结果,给出可回滚的验收清单。356 收藏 -
Redis Pipeline 出现异常时,不能只看 Exec 总错误。本文用 Go 客户端拆分请求级、命令级和业务级结果,区分 redis.Nil、命令参数错误与连接故障,并说明部分成功与重试边界。354 收藏 -
Redis 集群接入新命令前,先用 COMMAND GETKEYSANDFLAGS 解析完整命令里的键和访问属性。本文用 MSET、LMOVE 与带参数命令说明如何核对 key positions、key flags,并把结果接入集群路由预检。353 收藏