第一章 Java性能調優概述
1.1性能概述
1.1.1性能參考指標
執行時間,CPU時間,內存分配,磁盤吞吐量,網絡吞吐量,響應時間
1.1.2木桶原理與性能瓶頸
木桶原理即短板理論
最有可能成爲系統性能瓶頸的計算資源:磁盤I/O,網絡操作,CPU,異常,數據庫,鎖競爭,內存
1.1.3Amdahl定律
加速比定義: 加速比=優化前系統耗時/優化後系統耗時
Speedup ≤ 1 / (F + (1 - F) / N)
加速比Speedup,系統內必須串行化的程序比重F,CPU處理器數量N
1.2性能調優的層次
1.2.1設計調優
設計優化是對系統宏觀層面上”質“的優化,必須熟悉常用的軟件設計方法、設計模式、基本性能組件和常用優化思想
1.2.2代碼調優
無
1.2.3JVM調優
JVM調優通常在軟件開發後期進行,需要對JVM的運行原理和基本內存結構有一定了解
1.2.4數據庫調優
不作爲本書闡述重點
1.2.5操作系統調優
不在本書討論範圍之內
1.3基本調優策略和手段
優化的步驟:
注意事項:1.不要爲了優化而優化2.軟件優化需要在軟件功能、正確性和可維護性間取得平衡