-
reshard搬的是Slot而非Key,先重分配16384个Slot,再由集群自动触发Key迁移;需待“Allkeystransferred”提示才完成,且新节点须完成注册、握手、身份确认三步并满足网络与配置要求。
-
LTRIM是限制RedisList长度的唯一可靠方式,因其原子性、精准截断和内存即时释放特性;必须配合LPUSH使用,错误参数会清空列表,高并发下推荐Lua脚本保障原子性。
-
哨兵通过“客观下线”(ODOWN)判断主节点真挂了:单个哨兵连不上仅为主观下线(SDOWN),需至少quorum个哨兵达成一致才触发ODOWN;哨兵间用SENTINELis-master-down-by-addr命令确认,非心跳广播,网络分区可能导致结论不一。
-
--cluster-replicas必须加且数值需准确,它表示每个主节点配几个从节点;若节点总数不能被(replicas+1)整除,则报错ERRInvalidclusterconfiguration。
-
MAXLEN是RedisStreams唯一实时限长方式,必须与XADD原子配合使用;~N为近似保留,N为严格上限;XTRIM仅作兜底,非实时;语法中MAXLEN须紧随stream名后,错位即报错。
-
能,BITPOS返回第一个值为1的bit位偏移量(从0开始),需结合写入时的时间粒度和起始时间换算为真实时间,全0时返回-1。
-
使用布隆过滤器防护缓存穿透是因为它能快速判断元素是否可能存在,拦截不存在的请求,保护数据库。Redis布隆过滤器通过低内存占用高效判断元素存在性,成功拦截无效请求,减轻数据库压力。尽管存在误判率,但这种误判在缓存穿透防护中是可接受的。
-
Redis集群选举必须过半数Master同意,因其采用类Raft共识机制,要求至少(N/2+1)个在线Master投票通过,以防网络分区导致脑裂和数据不一致。
-
Redis7.0前无原生布隆过滤器,需依赖redisbloom模块或手动实现;云Redis通常未启用该模块,须先用MODULELIST确认;手动实现依赖SETBIT/GETBIT与多哈希(推荐fnv1a_64/murmur3),K取3–5,BIT_SIZE需按预估总量与误判率反推,避免空间不足导致误判飙升。
-
MySQL管理数据库连接的核心在于高效配置与优化连接池,以避免资源过度消耗并提升性能。1.连接过多会导致性能下降、资源耗尽、响应延迟和连接拒绝;2.连接池核心参数包括initialSize(初始连接数)、maxActive(最大连接数)、minIdle(最小空闲连接数)和maxWait(最大等待时间),需根据业务量和服务器性能合理设置;3.调优策略包括监控连接使用情况、进行压力测试、逐步调整参数及采用动态调整机制;4.最佳实践涵盖缩短连接占用时间、使用事务、避免耗时操作、使用预编译语句及及时关闭连接;5.