导语:这一篇解决"怎么落地"。包括中间件选型、不停机平滑扩容、数据迁移方案、演进路径(什么时候不该分)、监控指标、场景题设计与避坑清单。共 8 题。
导语:分库分表是数据库面试的"分水岭题"——能背出"垂直水平"只是入门,能把分片键选择、路由算法、跨库 JOIN、跨片分页、全局 ID、分布式事务这六个核心难题讲清才算过关。本篇覆盖完整链路并补上原文缺失的重点。共 13 题。
导语:分片(Sharding)是 MongoDB 面试最能拉开差距的部分——「分片键怎么选」几乎是必问题。本篇覆盖分片集群架构(mongos / config server / shard)、chunk 与均衡器、分片键的三维评估与四种策略、定向查询与广播查询、跨分片事务,以及容量规划、监控与场景设计题,共 20 题。
导语:副本集是 MongoDB 高可用的基石,也是面试分水岭——初级只会说「一主多从」,高级能讲清「选举怎么触发、oplog 为什么是幂等的、Rollback 什么时候发生、readConcern 与 readPreference 有什么区别、事务为什么必须配 majority」。本篇覆盖副本集架构、选举与故障转移、oplog 同步、四种一致性开关、多文档事务与 Change Streams,共 22 题。
导语:MongoDB 的性能问题 90% 出在「索引没建对 / 没走索引 / 返回了不必要的字段」。本篇覆盖索引类型全览、复合索引的最左前缀与 ESR 规则、索引失效清单、
explain的正确读法、慢查询定位,以及聚合管道的常用阶段与优化技巧,共 18 题。这一部分与 MySQL 索引篇思路相通但细节不同,建议对照复习。
导语:MongoDB 是文档型 NoSQL 的代表,面试通常从「和 MySQL 有什么区别、什么时候该用它」切入,再深挖文档模型(BSON、ObjectId、内嵌 vs 引用)与存储引擎(WiredTiger、文档级并发、checkpoint 与 journal)。本篇覆盖基础概念、数据建模、CRUD 高频考点与存储引擎原理,共 20 题。
导语:收官篇讲「把 Redis 用对」。前半部分是分布式锁的完整演进——
SET NX EX的最小实现、看门狗续期、Redisson 可重入、RedLock 的争议与边界;后半部分是工程落地——单线程模型与阻塞点、Pipeline/事务/Lua 的区别、限流、消息与延迟队列,以及版本里程碑,共 17 题。
导语:缓存用起来的价值是「快」,用不好的代价是「脏」和「崩」。本篇先解决「缓存被打穿」的三个经典问题(穿透 / 击穿 / 雪崩),再正面回答最难的一题——缓存与数据库的一致性到底怎么保证,并把 Cache-Aside、延迟双删、binlog 订阅这些方案的适用边界讲清楚,共 13 题。
导语:单机 Redis 有两个天花板:宕机就没数据(不可用)、内存装不下(不可扩展)。本篇按这个脉络展开:主从复制解决数据冗余、哨兵解决自动故障转移、Cluster 解决水平分片,并补齐 PSYNC 全量/增量同步、哨兵选主规则、MOVED/ASK 重定向、脑裂等高频追问题,共 14 题。
导语:内存数据库必须回答「重启后数据还在吗」和「内存满了怎么办」。本篇讲透持久化的三种形态、fork 与写时复制的真实代价、过期删除与八种淘汰策略,以及容易被忽略的「近似 LRU / LFU」实现细节,共 15 题。
