微服务治理:Nacos / Sentinel / OpenFeign / Spring Cloud Gateway
一句话速览:微服务治理的核心是”服务之间如何找到彼此(Nacos)、如何保护彼此不被打垮(Sentinel)、如何方便地互相调用(OpenFeign)、以及如何统一对外的门面(Gateway)”——本篇所有踩坑的根因都可以归结为一句话:配置了不等于生效了,治理类功能的失效几乎都是沉默的。 涉及原始记录:07-面试问题/开发问题/01-依赖与配置问题.md P0-01、P1-01、P1-02;07-面试问题/开发问题/02-框架与中间件集成问题.md P1-01、P1-02、P0-06 最近修订:2026-08-07 目录 技术点 1:Nacos —— 注册发现 + 配置中心 技术点 2:Sentinel —— 限流熔断 技术点 3:OpenFeign —— 服务间调用 技术点 4:Spring Cloud Gateway —— 统一入口 术语表 技术点 1:Nacos —— 注册发现 + 配置中心 难度:⭐⭐ | 掌握要求:能画出注册/发现/配置推送三条链路,能说清临时实例与持久实例的区别 核心概念Nacos 在项目里承担两个独立的角色,容易被混为一...
分布式事务与消息队列:Seata / RocketMQ
一句话速览:Seata AT 用 undo_log 快照让分布式事务”自动可回滚”,RocketMQ 用异步消息让服务解耦——两者共同的教训是:它们的失效方式都是沉默的(事务没回滚不报错、订阅被覆盖不报错),可靠性必须靠机制和验证来保证,不能靠”没异常”来推断。 涉及原始记录:07-面试问题/开发问题/02-框架与中间件集成问题.md P0-01、P0-05;07-面试问题/验证问题/01-业务逻辑问题.md P0-01 最近修订:2026-08-07 目录 技术点 1:Seata AT 模式 —— 分布式事务 技术点 2:RocketMQ —— 消息队列 术语表 技术点 1:Seata AT 模式 —— 分布式事务 难度:⭐⭐⭐ | 掌握要求:能画出两阶段提交流程,说清 undo_log、全局锁、写隔离 核心概念Seata AT 模式的本质是:业务代码不用手写补偿逻辑,Seata 自动记录 SQL 执行前后的数据快照(存在 undo_log 表),一旦全局事务需要回滚,就用快照生成反向 SQL 自动执行。 原理深挖:AT 模式的两阶段提交到底做了什么Seata 有三个...
缓存与数据一致性:多级缓存 / 布隆过滤器 / 状态广播
一句话速览:缓存的价值是”用内存换数据库压力”,代价是引入了一致性问题——本篇的主线是两条:① 缓存自身的三大经典风险(穿透/击穿/雪崩)各有标准解法;② 在分布式场景下,任何状态变更只清本地缓存等于没清,必须广播。 涉及原始记录:07-面试问题/开发问题/02-框架与中间件集成问题.md P0-02、P0-03;07-面试问题/验证问题/01-业务逻辑问题.md P0-02、P2-01(数据与环境问题) 最近修订:2026-08-07 目录 技术点 1:布隆过滤器 —— 防缓存穿透 技术点 2:多级缓存 —— Caffeine(本地)+ Redis(分布式) 技术点 3:缓存三大经典问题 —— 穿透 / 击穿 / 雪崩 技术点 4:缓存与数据库的一致性模式 术语表 技术点 1:布隆过滤器 —— 防缓存穿透 难度:⭐⭐ | 掌握要求:能说清”只能加不能删””假阳性无假阴性”两个特性及其后果 核心概念布隆过滤器解决的问题是:当查询一个根本不存在的 ID 时,不要让这个请求打到 DB(比如恶意扫描 houseId=99999...
搜索引擎:Elasticsearch + IK 中文分词
一句话速览:ES 的核心是倒排索引——“词 → 文档列表”的映射让全文检索从全表扫描变成查字典;但围绕它的绝大多数线上问题都不是”搜不到”本身,而是索引结构(Mapping)被错误创建、数据同步不完整、插件生命周期没管好这三类工程问题。 涉及原始记录:07-面试问题/开发问题/02-框架与中间件集成问题.md P1-04、P1-05;07-面试问题/验证问题/03-基础设施与中间件问题.md P1-01、P1-02、P1-03;07-面试问题/验证问题/02-数据与环境问题.md P1-04 最近修订:2026-08-07 目录 技术点 0:ES 底层原理速通 —— 倒排索引 / 写入流程 / 分片 技术点 1:Mapping —— 索引字段类型决定查询行为 技术点 2:IK 中文分词器 —— 中文全文检索的前提 技术点 3:数据同步的完整性 —— 消息驱动同步容易踩的坑 技术点 4:GEO 地理位置查询 术语表 技术点 0:ES 底层原理速通 —— 倒排索引 / 写入流程 / 分片 难度:⭐⭐⭐ | 掌握要求:能画出倒排索引结构、...
网络通信:Netty WebSocket 服务端
一句话速览:Netty 用 Reactor 线程模型 + ChannelPipeline 责任链,让少量线程处理海量长连接;本项目 IM 模块的所有坑都指向同一个认知——Pipeline 上”放行”不等于”能处理”,不匹配预期的事件会在责任链上被无声吞掉。 涉及原始记录:07-面试问题/开发问题/02-框架与中间件集成问题.md P0-04;07-面试问题/开发问题/01-依赖与配置问题.md P0-04、P1-05、P0-05;07-面试问题/验证问题/01-业务逻辑问题.md P0-04、P1-04 最近修订:2026-08-07 目录 技术点 0:Netty 底层原理 —— Reactor 线程模型与零拷贝 技术点 1:Netty Pipeline —— 请求处理的流水线模型 技术点 2:会话管理 —— 单一数据源原则 技术点 3:WebSocket 鉴权 —— 网关模式和直连模式的区别 技术点 4:TCP 粘包拆包与心跳 —— 长连接的必修课 术语表 技术点 0:Netty 底层原理 —— Reactor 线程模型与零拷贝 难度:⭐⭐⭐ | 掌握要求:能画出 bo...
数据库与并发控制:MyBatis-Plus 乐观锁 / 逻辑删除 / 并发扣减 / MySQL 原理
一句话速览:并发写安全的终极答案只有一句话——把”校验 + 修改”放进同一条原子 SQL 的 WHERE 条件里,让数据库行锁替你守住底线;应用层的乐观锁、Java 锁都只是辅助。数据库排查的第一工具是 EXPLAIN 和慢查询日志,不是猜。 涉及原始记录:07-面试问题/开发问题/02-框架与中间件集成问题.md P1-03;07-面试问题/验证问题/01-业务逻辑问题.md P1-02 最近修订:2026-08-07 目录 技术点 1:乐观锁(@Version)与逻辑删除(@TableLogic)叠加使用的坑 技术点 2:字段级参数校验的必要性 技术点 3:MySQL 索引与慢查询排查 —— 必补的地基 技术点 4:事务隔离级别、MVCC 与锁 —— 必补的地基 技术点 5:并发控制手段全景对比 术语表 技术点 1:乐观锁(@Version)与逻辑删除(@TableLogic)叠加使用的坑 难度:⭐⭐⭐ | 掌握要求:能说清两个拦截器叠加的风险、手写 SQL 为什么更可控 核心概念这两个 MyBatis-Plus 特性分别解决不同的问题: 乐观锁:并发更新同一行数...
可观测性:SkyWalking 链路追踪 / Prometheus + Grafana 指标监控 / 日志体系
一句话速览:可观测性的三大支柱各回答一个问题——Logging 回答”发生了什么”,Metrics 回答”系统整体是否健康”,Tracing 回答”这一次请求卡在哪一环”。三者互补不可替代;同时要记住:可观测性工具本身也是跑在你环境里的软件,有兼容性和资源成本,不是配完就万事大吉。 涉及原始记录:07-面试问题/开发问题/01-依赖与配置问题.md P0-02;07-面试问题/验证问题/03-基础设施与中间件问题.md P2-01 最近修订:2026-08-07 目录 技术点 1:SkyWalking Agent —— 无侵入式链路追踪的原理与代价 技术点 2:可观测性三大支柱与 Prometheus 指标监控 技术点 3:日志体系 —— 结构化输出与 traceId 透传 术语表 技术点 1:SkyWalking Agent —— 无侵入式链路追踪的原理与代价 难度:⭐⭐ | 掌握要求:Java Agent 字节码增强原理、JDK 强封装与 --add-opens 核心概念SkyWalking Agent 的”无侵入”是通过 Java Agent 机制(-javaag...
容器化部署:Docker Compose 编排
一句话速览:Docker 的心智模型只有一句话——镜像分层 + 容器可写层 + 数据卷,三层各有什么生命周期想清楚了,”插件丢失””数据丢失””重建后配置还原”这类问题全部可以提前预判;编排层面则要记住:depends_on 管顺序不管可用,up -d 成功不代表健康。 涉及原始记录:07-面试问题/验证问题/03-基础设施与中间件问题.md P2-02、P1-03、P1-05;07-面试问题/开发问题/02-框架与中间件集成问题.md P1-05(ES 插件持久化);07-面试问题/开发问题/01-依赖与配置问题.md P1-06、P1-07、P1-08(多服务脚本管理、Nacos 内存调优、健康检查超时) 最近修订:2026-08-07 目录 技术点 1:数据卷(Volume)—— 决定什么东西能在容器重建后存活 技术点 2:容器编排的依赖顺序(depends_on + healthcheck) 技术点 3:资源过载是环境问题,不要误判成代码 bug 技术点 4:多服务脚本管理——服务清单是唯一事实来源,且要随规模持续演进 技术点 5:镜像分层、网络与资源限制 —— 必补...
认证鉴权与网关架构:JWT / 统一鉴权 / CI-CD 基础概念
一句话速览:本项目的鉴权架构是”网关一处验签、下游全部信任 Header”——这个模式用”业务服务零鉴权代码”换来了”直连业务端口这条路在语义上不成立”的硬约束;JWT 本身用签名换无状态,代价是无法主动失效,踢人/续期都要额外的机制来补。 涉及原始记录:07-面试问题/验证问题/01-业务逻辑问题.md P0-01;07-面试问题/验证问题/02-数据与环境问题.md P1-02、P1-03;补充内容:CI/CD 基础概念(阶段12引入,本项目未做 CD) 最近修订:2026-08-07 目录 技术点 1:网关统一鉴权 + Header 透传模式 技术点 2:JWT(JSON Web Token)基础 技术点 3:JWT 的续期与主动失效 —— 无状态的两块补丁 技术点 4:CI/CD 基础概念(了解即可,本项目未落地 CD) 术语表 技术点 1:网关统一鉴权 + Header 透传模式 难度:⭐⭐ | 掌握要求:能画出透传链路、说清直连端口为什么必然拿不到用户 核心概念本项目的鉴权架构是一种常见的微服务模式:只在网关这一层做 JWT 验...
JVM 与并发编程:OOM 排查 / ThreadLocal / DCL / 接口幂等性
一句话速览:这一篇收拢散落在各处的”JVM 与并发”知识——它们在本项目的踩坑记录里反复作为”底层原因”出现(Nacos OOM、UserContextHolder、缓存 DCL、MQ 幂等),但一直没有一篇文档把它们讲透。主线是:JVM 部分记住”排查靠工具不靠猜”,并发部分记住”可见性/原子性/有序性三个问题各由什么机制解决”,幂等部分记住”任何可能被重复执行的入口都要自问一遍幂等”。 涉及原始记录:07-面试问题/开发问题/01-依赖与配置问题.md P1-07(Nacos OOM);关联模块:livin-common-security 的 UserContextHolder(ThreadLocal)、livin-house 的缓存 DCL、各 MQ 消费者 最近修订:2026-08-07 目录 技术点 1:JVM 内存结构与 OOM 排查 技术点 2:ThreadLocal —— 项目里 UserContextHolder 的底层 技术点 3:Java 并发三要素与 DCL / 分布式锁 技术点 4:接口幂等性设计 术语表 技术点 1...




