答:先按业务区分可淘汰缓存、需要持久化的状态与大对象。压缩键和值、限制集合增长和 TTL,再评估分片或把冷数据移出 Redis。
答:常用旁路缓存,写数据库后使缓存失效,读未命中再填充。由缓存层负责加载的读穿、由它同步写后端的写穿,以及先接收再异步落库的写回,各有不同的失败结果。
答:Streams 消费组可跟踪已投递但未确认任务。处理成功再 XACK,处理者失联时把闲置任务交给其他人,失败达到阈值后进入待人工处理或死信流程。
答:控制单次命令工作量、返回量和客户端批次。用分片、分批扫描和流水线摊开网络及 CPU 工作,并观察尾延迟与资源。
答:如果用 Redis 存会话,应选高随机标识和合理 TTL,限制读写权限并通过受保护的连接访问。注销、吊销和续期要有明确业务语义。
答:到期的键在访问时按失效处理。服务器主动清理有时间和工作量预算,未访问的键可能过一会儿才释放,释放后 RSS 也未必立刻下降。
答:Bitmap 基于 String 的位操作。用 SETBIT 把某偏移置为 0 或 1,GETBIT 读取,BITCOUNT 统计置 1 的位数。适合连续编号和布尔状态。
答:节点用集群总线交换 PING、PONG 和状态。单节点判断对方不通可记 PFAIL,达到主节点报告条件后形成 FAIL,随后合格副本可选举接管。
答:续期必须先确认锁值仍是自己的随机标识,再原子延长 TTL。Redisson 可为使用默认租期的锁启动看门狗,定期延长剩余时间。
答:把业务写入收敛到数据库事务。提交成功后让缓存失效,用可靠事件和重试处理删除失败。出现并发回填时,用版本或明确的一致读路径处理。