# SUMMARY * [简介](./README.md) * [开篇词 | 别再让Linux性能问题成为你的绊脚石](./docs/68728.md) * [01 | 如何学习Linux性能优化?](./docs/69346.md) * [02 | 基础篇:到底应该怎么理解“平均负载”?](./docs/69618.md) * [03 | 基础篇:经常说的 CPU 上下文切换是什么意思?(上)](./docs/69859.md) * [04 | 基础篇:经常说的 CPU 上下文切换是什么意思?(下)](./docs/70077.md) * [05 | 基础篇:某个应用的CPU使用率居然达到100%,我该怎么办?](./docs/70476.md) * [06 | 案例篇:系统的 CPU 使用率很高,但为啥却找不到高 CPU 的应用?](./docs/70822.md) * [07 | 案例篇:系统中出现大量不可中断进程和僵尸进程怎么办?(上)](./docs/71064.md) * [08 | 案例篇:系统中出现大量不可中断进程和僵尸进程怎么办?(下)](./docs/71382.md) * [09 | 基础篇:怎么理解Linux软中断?](./docs/71868.md) * [10 | 案例篇:系统的软中断CPU使用率升高,我该怎么办?](./docs/72147.md) * [11 | 套路篇:如何迅速分析出系统CPU的瓶颈在哪里?](./docs/72685.md) * [12 | 套路篇:CPU 性能优化的几个思路](./docs/73151.md) * [13 | 答疑(一):无法模拟出 RES 中断的问题,怎么办?](./docs/73381.md) * [14 | 答疑(二):如何用perf工具分析Java程序?](./docs/73738.md) * [15 | 基础篇:Linux内存是怎么工作的?](./docs/74272.md) * [16 | 基础篇:怎么理解内存中的Buffer和Cache?](./docs/74633.md) * [17 | 案例篇:如何利用系统缓存优化程序的运行效率?](./docs/75242.md) * [18 | 案例篇:内存泄漏了,我该如何定位和处理?](./docs/75670.md) * [19 | 案例篇:为什么系统的Swap变高了(上)](./docs/75797.md) * [20 | 案例篇:为什么系统的Swap变高了?(下)](./docs/75973.md) * [21 | 套路篇:如何“快准狠”找到系统内存的问题?](./docs/76460.md) * [22 | 答疑(三):文件系统与磁盘的区别是什么?](./docs/76675.md) * [23 | 基础篇:Linux 文件系统是怎么工作的?](./docs/76876.md) * [24 | 基础篇:Linux 磁盘I/O是怎么工作的(上)](./docs/77010.md) * [25 | 基础篇:Linux 磁盘I/O是怎么工作的(下)](./docs/77511.md) * [26 | 案例篇:如何找出狂打日志的“内鬼”?](./docs/77885.md) * [27 | 案例篇:为什么我的磁盘I/O延迟很高?](./docs/78409.md) * [28 | 案例篇:一个SQL查询要15秒,这是怎么回事?](./docs/78633.md) * [29 | 案例篇:Redis响应严重延迟,如何解决?](./docs/78984.md) * [30 | 套路篇:如何迅速分析出系统I/O的瓶颈在哪里?](./docs/79001.md) * [31 | 套路篇:磁盘 I/O 性能优化的几个思路](./docs/79368.md) * [32 | 答疑(四):阻塞、非阻塞 I/O 与同步、异步 I/O 的区别和联系](./docs/79734.md) * [33 | 关于 Linux 网络,你必须知道这些(上)](./docs/80898.md) * [34 | 关于 Linux 网络,你必须知道这些(下)](./docs/81057.md) * [35 | 基础篇:C10K 和 C1000K 回顾](./docs/81268.md) * [36 | 套路篇:怎么评估系统的网络性能?](./docs/81497.md) * [37 | 案例篇:DNS 解析时快时慢,我该怎么办?](./docs/81850.md) * [38 | 案例篇:怎么使用 tcpdump 和 Wireshark 分析网络流量?](./docs/82321.md) * [39 | 案例篇:怎么缓解 DDoS 攻击带来的性能下降问题?](./docs/82573.md) * [40 | 案例篇:网络请求延迟变大了,我该怎么办?](./docs/82833.md) * [41 | 案例篇:如何优化 NAT 性能?(上)](./docs/83189.md) * [42 | 案例篇:如何优化 NAT 性能?(下)](./docs/83520.md) * [43 | 套路篇:网络性能优化的几个思路(上)](./docs/83783.md) * [44 | 套路篇:网络性能优化的几个思路(下)](./docs/84003.md) * [45 | 答疑(五):网络收发过程中,缓冲区位置在哪里?](./docs/84529.md) * [46 | 案例篇:为什么应用容器化后,启动慢了很多?](./docs/84953.md) * [47 | 案例篇:服务器总是时不时丢包,我该怎么办?(上)](./docs/85201.md) * [48 | 案例篇:服务器总是时不时丢包,我该怎么办?(下)](./docs/85688.md) * [49 | 案例篇:内核线程 CPU 利用率太高,我该怎么办?](./docs/86330.md) * [50 | 案例篇:动态追踪怎么用?(上)](./docs/86490.md) * [51 | 案例篇:动态追踪怎么用?(下)](./docs/86710.md) * [52 | 案例篇:服务吞吐量下降很厉害,怎么分析?](./docs/87342.md) * [53 | 套路篇:系统监控的综合思路](./docs/87980.md) * [54 | 套路篇:应用监控的一般思路](./docs/88423.md) * [55 | 套路篇:分析性能问题的一般步骤](./docs/88667.md) * [56 | 套路篇:优化性能问题的一般方法](./docs/89278.md) * [57 | 套路篇:Linux 性能工具速查](./docs/89306.md) * [58 | 答疑(六):容器冷启动如何性能分析?](./docs/89613.md) * [加餐(一) | 书单推荐:性能优化和Linux 系统原理](./docs/80829.md) * [加餐(二) | 书单推荐:网络原理和 Linux 内核实现](./docs/84619.md) * [用户故事 | “半路出家 ”,也要顺利拿下性能优化!](./docs/87638.md) * [用户故事 | 运维和开发工程师们怎么说?](./docs/89949.md) * [结束语 | 愿你攻克性能难关](./docs/90323.md) * [结课测试|这些Linux性能知识你都掌握了吗?](./docs/224360.md)