GitHub 上超火的阿里调优专家的 677 页 Java 性能调优笔记,已让我拿下 5 个 offer
介绍性能的基本概念、两个重要理论(木桶原理和 Amdahl 定律),以及系统调优的一般步骤与注意事项。

1.1 性能概述

1.2 性能调优的层次

1.3 基本 i 调优策略和手段

1.4 小结
第 2 章
从设计层面介绍与性能相关的设计模式、组件及有助于改善性能的软件设计思想。

2.1 善用设计模式

2.2 常用的优化组件和方法

2.3 小结
第 3 章
从代码层面介绍如何编写高性能的 Java 代码,涉及的主要内容有字符串的优化处理、文件 IO 的优化、核心数据结构的使用、Java 的引用类型及一些常用的惯例。


3.1 字符串优化处理

3.2 核心数据结构

3.3 使用 NIO 提升性能

3.4 引用类型

3.5 性能测试工具 JMH

3.6 有助于改善性能的技巧

3.7 小结
第 4 章
介绍并行程序开发的相关知识,以及如何通过多线程提高系统性能,涉及的主要内容有并发设计模式、多任务执行框架、并发数据结构的使用、并发控制方法、“锁”的优化、无锁的并行计算及协程。



4.1 并行程序设计模式

4.2 JDK 多任务执行框架

4.3 JDE 并发数据结构

4.4 并发控制方法

4.5 锁的性能和优化

4.6 无锁的并行计算

4.7 协程

4.8 小结
第 5 章
立足于 JVM 虚拟机层面,介绍如何通过设置合理的 JVM 参数提升 Java 程序的性能。


5.1 Java 虚拟机内存模型

5.2 JVM 内存分配参数

5.3 垃圾收集基础

5.4 常用调优案例和方法

5.5 实用 JVM 参数

5.6JVM 调优实战
评论