这是一本理论和实践相结合的、同时面向研发和测试岗的关于性能分析诊断调优实践的图书,比起其他的很多性能测试方面的图书,本书的内容更侧重于介绍如何去发现性能问题、分析诊断性能问题以及对发现的性能问题进行调优。书中的内容涵盖了性能测试基础、Linux和Windows服务器的性能分析、Web和应用中间件的性能分析、Java应用程序的性能分析、MySQL数据库的性能分析、安卓APP的性能分析以及具体的性能分析案例实践。这本书主要是面向有一定性能测试基础或者编程语言基础的朋友,对于刚刚接触性能测试的朋友来说可能会稍显吃力,建议在阅读本书的同时可以搭配参考其他的基础书籍,这样学习效果会更好,笔者相信读完本书的朋友以后肯定不会再为“性能问题”而发愁。
《软件性能测试、分析与调优实践之路》主要分享作者在多年软件测试从业中积累的关于性能测试、分析诊断与调优的技巧以及实战经验,使读者在性能测试、分析诊断与调优能力上有进一步的提升。
《软件性能测试、分析与调优实践之路》分为8章,首先从性能测试的基础理论开始介绍,包括性能测试的基本概念、常见的性能指标、性能测试流程等,接着会介绍Linu和Windows服务器的性能指标监控和性能分析技巧、Web中间件和应用中间件的常见性能诊断调优方法、Java应用程序的性能分析诊断调优技巧、MySQL数据库以及安卓APP的常见性能分析诊断方式,后会结合LoadRunner、JMeter等常见性能测试工具以及结合HTTP、RPC等常见的传输协议一起来剖析真实的性能测试分析调优案例。
《软件性能测试、分析与调优实践之路》适合性能测试初学者、测试工程师、测试经理、研发经理、技术经理作为技术参考书,也适合高等院校与培训学校软件测试相关专业的师生作为教学参考书。
第1章 性能测试、分析与调优基础 1
1.1 性能测试的基础 1
1.1.1 性能测试的分类 2
1.1.2 性能测试的场景 2
1.2 常见的性能测试指标 3
1.2.1 响应时间 3
1.2.2 TPS/QPS 3
1.2.3 并发用户 4
1.2.4 PV/UV 4
1.2.5 点击率 4
1.2.6 吞吐量 5
1.2.7 资源开销 5
1.3 性能测试的目标 5
1.4 性能测试的基本流程 6
1.4.1 性能需求分析 6
1.4.2 制定性能测试计划 7
1.4.3 编写性能测试方案 8
1.4.4 编写性能测试案例 9
1.5 性能分析调优模型 10
1.6 性能分析调优思想 11
1.6.1 分层分析 11
1.6.2 科学论证 12
1.6.3 问题追溯与归纳总结 13
1.7 性能调优技术 14
1.7.1 缓存调优 14
1.7.2 同步转异步推送 14
1.7.3 拆分 15
1.7.4 任务分解与并行计算 16
1.7.5 索引与分库分表 16
第2章 服务器的性能监控与分析 18
2.1 Linux服务器的性能监控与分析 18
2.1.1 通过vmstat深挖服务器的性能问题 18
2.1.2 如何通过mpstat 分析服务器的性能指标 21
2.1.3 如何通过pidstat发现性能问题 23
2.1.4 从lsof中能看到什么 29
2.1.5 如何通过free看懂内存的真实使用 37
2.1.6 如何通过top发现问题 38
2.1.7 网络流量如何监控 40
2.1.8 nmon对Linux服务器的整体性能监控 47
2.2 Windows服务器的性能监控与分析 50
2.2.1 Windows性能监视器 50
2.2.2 Windows性能监视器下的性能分析 61
第3章 Web中间件的性能分析与调优 63
3.1 Nginx的性能分析与调优 63
3.1.1 Nginx负载均衡策略的介绍与调优 63
3.1.2 Nginx进程数的配置调优 65
3.1.3 Nginx事件处理模型的分析与调优 66
3.1.4 Nginx客户端连接数的调优 68
3.1.5 Nginx中文件传输的性能优化 68
3.1.6 Nginx中FastCGI配置的分析与调优 70
3.1.7 Nginx的性能监控 72
3.2 Apache的性能分析与调优 73
3.2.1 Apache的工作模式选择和进程数调优 73
3.2.2 Apache的mod选择与调优 77
3.2.3 Apache的KeepAlive调优 79
3.2.4 Apache的ab压力测试工具 79
3.2.5 Apache的性能监控 81
第4章 应用中间件的性能分析与调优 84
4.1 Tomcat的性能分析与调优 84
4.1.1 Tomcat的组件以及工作原理 84
4.1.2 Tomcat容器Connector性能参数调优 88
4.1.3 Tomcat容器的I/O分析与调优 89
4.2 WildFly的性能分析与调优 92
第5章 Java应用程序的性能分析与调优 112
5.1 JVM基础知识 112
5.2 JVM如何监控 124
5.3 JVM性能分析与诊断 142
5.4 JVM性能调优技巧 160
5.4.1 如何减少GC 160
5.4.2 另类Java内存泄漏 161
第6章 MySQL数据库的性能分析 163
6.1 MySQL数据库的性能监控 163
6.2 MySQL数据库的性能定位 171
第7章 性能测试、分析与调优案例实践 176
7.1 JMeter对HTTP服务的性能压测分析与调优 176
7.2 LoadRunner对HTTP服务的性能压测分析与调优 187
7.3 JMeter对RPC服务的性能压测分析与调优 202
第8章 安卓APP的性能分析 218
8.1 adb 218
8.2 DDMS 221
8.3 Android Studio profiler 231
8.4 systrace 238
温馨提示:请使用贵州孔学堂图书馆的读者帐号和密码进行登录