《軟體性能測試、分析與調優實踐之路(第2版)》是一本清華大學出版社出版的圖書,作者是張永清。
基本介紹
- 中文名:軟體性能測試、分析與調優實踐之路(第2版)
- 作者:張永清
- 出版時間:2024年3月1日
- 出版社:清華大學出版社
- ISBN:9787302654247
- 定價:69 元
- 開本:16 開
內容簡介,作者簡介,圖書目錄,
內容簡介
《軟體性能測試、分析與調優實踐之路》主要分享作者在多年軟體測試從業中積累的關於性能測試、分析診斷與調優技巧等方面的實戰經驗,幫助讀者提升軟體性能測試、分析診斷與調優的能力。本書配套PPT課件、作者微信答疑服務。
《軟體性能測試、分析與調優實踐之路》分為9章,內容包括軟體性能測試、分析與調優基礎,伺服器的性能監控與分析,Web中間件的性能分析與調優,套用中間件的性能分析與調優,Java應用程式的性能分析與調優,MySQL資料庫的性能分析,性能測試、分析與調優案例實踐,安卓APP的性能分析,前端性能分析。其中,第7章利用LoadRunner、JMeter等常見性能測試工具,在HTTP、RPC、JDBC等常見的傳輸協定的基礎上,結合實際的性能壓測案例進行實踐分析,剖析真實的性能測試分析與調優方法。
《軟體性能測試、分析與調優實踐之路》適合軟體性能測試初學者、測試工程師、測試經理、研發經理、技術經理閱讀,也適合作為高等院校或高職高專學習軟體性能測試相關課程的教材和教學參考書。
作者簡介
張永清,從事功能測試、自動化測試、性能測試、Java軟體開發、大數據開發、架構師等工作十多年,在自動化測試設計、性能測試設計、性能診斷、性能調優、分散式架構設計等方面積累了多年經驗。參與過的系統涉及公安、網際網路、移動網際網路、大數據、人工智慧等領域。先後任職於江蘇飛搏軟體、蘇寧大數據研發中心、蘇寧研究院、蘇寧人工智慧研發中心、紫金普惠研發中心、福特汽車工程研究有限公司,歷任測試經理、技術經理、部門經理、高級架構師等職位。重點關注大數據、圖像處理、高性能分散式架構設計等領域。著有圖書《軟體性能測試、分析與調優實踐之路》《Robot Framework自動化測試框架核心指南》。
圖書目錄
目 錄
第1章 性能測試、分析與調優基礎 1
1.1 性能測試的基礎 1
1.1.1 性能測試的分類 2
1.1.2 性能測試的場景 3
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.4.5 搭建性能測試環境 10
1.4.6 構造性能測試數據 10
1.5 性能分析調優模型 11
1.6 性能分析調優思想 12
1.6.1 分層分析 12
1.6.2 科學論證 13
1.6.3 問題追溯與歸納總結 14
1.7 性能調優技術 14
1.7.1 快取調優 14
1.7.2 同步轉異步推送 17
1.7.3 削峰填谷 17
1.7.4 拆分 19
1.7.5 任務分解與並行計算 19
1.7.6 索引與分庫分表 20
1.7.7 層層過濾 22
第2章 伺服器的性能監控與分析 23
2.1 Linux伺服器的性能監控與分析 23
2.1.1 通過vmstat深挖伺服器的性能問題 23
2.1.2 如何通過mpstat分析伺服器的性能指標 26
2.1.3 如何通過pidstat發現性能問題 28
2.1.4 從lsof中能看到什麼 34
2.1.5 如何通過free看懂記憶體的真實使用 42
2.1.6 如何通過top發現問題 42
2.1.7 網路流量如何監控 45
2.1.8 nmon對Linux伺服器的整體性能監控 51
2.2 Windows伺服器的性能監控與分析 54
2.2.1 Windows性能監視器 54
2.2.2 Windows性能監視器下的性能分析 64
第3章 Web中間件的性能分析與調優 66
3.1 Nginx的性能分析與調優 66
3.1.1 Nginx負載均衡策略的介紹與調優 66
3.1.2 Nginx進程數的配置調優 68
3.1.3 Nginx事件處理模型的分析與調優 69
3.1.4 Nginx客戶端連線數的調優 71
3.1.5 Nginx中檔案傳輸的性能最佳化 71
3.1.6 Nginx中FastCGI配置的分析與調優 73
3.1.7 Nginx的性能監控 75
3.2 Apache的性能分析與調優 76
3.2.1 Apache的工作模式選擇和進程數調優 76
3.2.2 Apache的mod選擇與調優 80
3.2.3 Apache的KeepAlive調優 82
3.2.4 Apache的ab壓力測試工具 83
3.2.5 Apache的性能監控 84
第4章 套用中間件的性能分析與調優 87
4.1 Tomcat的性能分析與調優 87
4.1.1 Tomcat的組件以及工作原理 87
4.1.2 Tomcat容器Connector性能參數調優 92
4.1.3 Tomcat容器的I/O分析與調優 92
4.1.4 SpringBoot中的Tomcat調優 95
4.2 WildFly的性能分析與調優 97
4.2.1 WildFly Standalone模式介紹 97
4.2.2 WildFly Standalone模式管理控制台性能參數調優 99
4.2.3 WildFly Standalone模式性能監控 108
第5章 Java應用程式的性能分析與調優 117
5.1 JVM基礎知識 117
5.1.1 JVM簡介 117
5.1.2 類載入器 118
5.1.3 Java虛擬機棧和原生方法棧 120
5.1.4 方法區與元數據區 121
5.1.5 堆區 121
5.1.6 程式計數器 122
5.1.7 垃圾回收 123
5.1.8 並行與並發 128
5.1.9 垃圾回收器 128
5.2 JVM如何監控 129
5.2.1 jconsole 129
5.2.2 jvisualvm 135
5.2.3 jmap 145
5.2.4 jstat 146
5.3 JVM性能分析與診斷 147
5.3.1 如何讀懂GC日誌 147
5.3.2 jstack 152
5.3.3 MemoryAnalyzer 157
5.4 JVM性能調優技巧 165
5.4.1 如何減少GC 165
5.4.2 另類Java記憶體泄漏 166
第6章 MySQL資料庫的性能分析 168
6.1 MySQL資料庫的性能監控 168
6.1.1 如何查看MySQL資料庫的連線數 168
6.1.2 如何查看MySQL資料庫當前運行的事務與鎖 169
6.1.3 MySQL中資料庫表的監控 171
6.1.4 性能測試時MySQL中其他常用監控 174
6.2 MySQL資料庫的性能定位 176
6.2.1 慢SQL 177
6.2.2 執行計畫 178
6.2.3 MySQL資料庫性能定位步驟 180
6.3 MySQL資料庫查詢的性能調優 181
6.3.1 合理創建索引 181
6.3.2 查詢最佳化 182
第7章 性能測試、分析與調優案例實踐 186
7.1 JMeter對HTTP服務的性能壓測分析與調優 186
7.2 LoadRunner對HTTP服務的性能壓測分析與調優 196
7.3 JMeter對RPC服務的性能壓測分析與調優 211
7.3.1 JMeter如何通過自定義Sample來對RPC服務進行壓測 211
7.3.2 JMeter對GRPC服務的性能壓測分析與調優 220
7.4 JMeter對MySQL性能壓測分析與調優 227
7.4.1 如何利用JMeter為MySQL資料庫構造測試數據 227
7.4.2 JMeter對MySQL資料庫的性能壓測分析與調優 233
7.5 常見性能問題分析總結 237
第8章 安卓APP的性能分析 243
8.1 adb 243
8.2 DDMS 245
8.3 Android Studio Profiler 254
8.4 systrace 261
第9章 前端性能分析 263
9.1 谷歌瀏覽器開發工具Performance介紹 263
9.2 使用Performance來查看和定位頁面性能 266
9.3 前端性能調優建議 272