知识模块
☕ Java 知识模块
十二、性能优化
概述

十二、性能优化

性能优化是高级面试加分项,涵盖 SQL 优化、JVM 调优、缓存策略、连接池优化等核心技能。✅ 章节已全部完成

本章内容

SQL 优化

  • SQL 索引优化 - 索引设计原则、索引失效场景、EXPLAIN 分析、联合索引、覆盖索引、索引下推 ✅
  • 深度分页优化 - LIMIT 深分页问题、子查询优化、延迟关联、游标分页 ✅
  • 慢查询优化 - 慢查询日志、SQL 优化技巧、执行计划分析、实战案例 ✅

JVM 调优

  • JVM 调优 - JVM 参数分类、堆内存配置、GC 调优、问题排查工具 ✅

资源优化

  • 连接池优化 - 连接池原理、HikariCP 配置、Druid 配置、参数调优 ✅
  • 缓存策略优化 - 缓存穿透/击穿/雪崩、缓存一致性、缓存预热、多级缓存 ✅

📊 完成进度

分类已完成总数进度
性能优化66100%

知识图谱

性能优化
├── SQL 优化
│   ├── 索引优化
│   │   ├── B+ 树结构
│   │   ├── 聚簇索引 vs 非聚簇索引
│   │   ├── 联合索引(最左前缀)
│   │   ├── 索引失效场景
│   │   ├── 覆盖索引
│   │   └── 索引下推
│   ├── 深度分页
│   │   ├── LIMIT 深分页问题
│   │   ├── 子查询优化
│   │   ├── 延迟关联优化
│   │   └── 游标分页
│   └── 慢查询
│       ├── 慢查询日志
│       ├── EXPLAIN 分析
│       └── SQL 优化技巧
├── JVM 调优
│   ├── JVM 参数
│   ├── 内存配置
│   ├── GC 调优
│   └── 问题排查
├── 连接池优化
│   ├── 连接池原理
│   ├── HikariCP(高性能)
│   ├── Druid(监控丰富)
│   └── 参数调优
└── 缓存策略
    ├── 缓存问题
    ├── 缓存一致性
    ├── 缓存预热
    └── 多级缓存

面试高频题

  1. 为什么 MySQL 使用 B+ 树而不是 B 树?
  2. 什么是聚簇索引和非聚簇索引?
  3. 联合索引的最左前缀原则是什么?
  4. 索引什么时候会失效?
  5. LIMIT 深分页为什么慢?如何优化?
  6. 如何分析一条 SQL 的执行计划?
  7. 生产环境如何配置 JVM 参数?
  8. 如何选择垃圾收集器?
  9. 为什么需要连接池?HikariCP 为什么快?
  10. 什么是缓存穿透、击穿、雪崩?如何解决?