-
用SETBIT而非SET存在线状态,因位图内存仅约12.5MB(1亿用户),支持秒级统计与集合运算;需确保用户ID为非负整数、key带日期并设过期,用BITFIELD批量操作,BITCOUNT统计时注意写入逻辑与精度。
-
哨兵通过“客观下线”(ODOWN)判断主节点真挂了:单个哨兵连不上仅为主观下线(SDOWN),需至少quorum个哨兵达成一致才触发ODOWN;哨兵间用SENTINELis-master-down-by-addr命令确认,非心跳广播,网络分区可能导致结论不一。
-
使用布隆过滤器防护缓存穿透是因为它能快速判断元素是否可能存在,拦截不存在的请求,保护数据库。Redis布隆过滤器通过低内存占用高效判断元素存在性,成功拦截无效请求,减轻数据库压力。尽管存在误判率,但这种误判在缓存穿透防护中是可接受的。
-
MAXLEN是RedisStreams唯一实时限长方式,必须与XADD原子配合使用;~N为近似保留,N为严格上限;XTRIM仅作兜底,非实时;语法中MAXLEN须紧随stream名后,错位即报错。
-
LTRIM是限制RedisList长度的唯一可靠方式,因其原子性、精准截断和内存即时释放特性;必须配合LPUSH使用,错误参数会清空列表,高并发下推荐Lua脚本保障原子性。
-
MAXLEN是RedisStreams唯一实时限长方式,必须与XADD原子配合使用;~N为近似保留,N为严格上限;XTRIM仅作兜底,非实时;语法中MAXLEN须紧随stream名后,错位即报错。
-
PUBSUBCHANNELS命令返回当前至少有一个订阅者的活跃频道,不保留历史记录;频道非键空间成员,故KEYS/SCAN无法查到;支持pattern过滤,结果需手动decode。