【推薦序】
1999年,Windows 98只有1800萬行程式碼,執行環境只需要16MB記憶體、225MB硬碟。而目前最新的Windows 10有6000萬行程式碼,需要8GB記憶體、20GB硬碟才能流暢地執行。
1990年,低速的CAN匯流排才125kb/s,高速的500kb/s吞吐的CAN匯流排就能滿足整車通訊需要,而且還有剩餘。之後,CA匯流排升級到2.0,最高也才8MB的吞吐。而今天100MB以上的乙太網通訊及其高速CA匯流排3.0已經成為電動汽車電子的標配。
所有軟體系統都在急劇複雜化,所有軟體的基礎執行環境都在急劇膨脹。
在這種情況下,在複雜環境下進行軟體可靠性測試,分析軟體缺陷,快速定位和解決軟體缺陷,是保持產品市場競爭力的核心能力。尤其對正在數字化、資訊化轉型的傳統企業而言,他們既要保證支撐傳統業務的老系統的連續性,又要保證在疊床架屋的傳統IT架構中更快更好更巧妙地進行變革。這種變革往往牽一髮而動全身,如何革而不毀,如何在保證質量和業務連續性的前提下不斷迭代,軟體測試就是我們制勝的法寶。
百年福特,長盛不衰,對產品質量的重視是其中的秘訣之一。福特中國一貫把軟體質量和穩定性放在第一位,把發展自己的測試團隊放在組織進化的重要位置,本書作者張永清就是這樣一位福特中國軟體團隊優秀的軟體專家。
張永清的這本書,融合了研發和測試,融合了後端和前端,融合了應用和資料庫,融合了效能定位的方法論和實踐,全面介紹瞭如何進行效能分析定位調優,如何讓軟體系統擁有更快的效能體驗,這些是他在很多年測試、研發、架構崗位上經驗積累的輸出。由於本書涉及的知識面很廣,因此本書的內容不僅適合效能測試工程師,也適合應用開發工程師、系統分析工程師以及其他崗位的IT工程師。
本書最大的特點就是非常全面地剖析了效能調優的技術和方法,並且結合了大量真實的效能壓測案例,讓讀者能把學習到的理論知識運用到實際的案例中去做實踐分析。透過實踐,讀者不僅可以加深對理論的理解,還可以積累到更多真實的調優經驗。
我們希望本書能作為一個引子,一頭串起作者本人堅實的軟體專業技能,另一頭給未來中國軟體工程和軟體測試技術繼續添磚加瓦,持續發光發熱,透過技術服務於社會、服務於大眾。
“書山有路勤為徑,學海無涯苦作舟”。真誠希望每一位接觸本書的讀者能夠認真閱讀書中樸實無華的文字和案例,把書中的知識變成自己的積累,再透過實踐進行輸出。相信本書一定能讓每位讀過此書的讀者走向更好的未來。
黃紀南
福特中國企業技術高階總監
前 言
在經歷了傳統網際網路時代和移動網際網路時代之後,我們又迎來了大資料時代和人工智慧(AI)時代。但是,不管哪個IT時代,軟體的效能始終是使用者體驗的一個重要環節。如目前最火熱的AI應用ChatGPT, 如果沒有一個很快的效能,那麼它在和人類對話時,就會顯得很遲鈍,其效能和穩定性直接決定了ChatGPT 能否從容地服務於全球17億以上的使用者訪問。
本書升級說明
隨著軟體技術的發展和更新換代,軟體系統越來越複雜,人工智慧模型也越來越大,與之對應的是效能要求越來越高,系統穩定要求更加突出。正是在這樣的背景和需求下,同時也在本書前一版《軟體效能測試、分析與調優實踐之路》大量讀者的反饋和建議下,迎來了這本書的第2版。
本書在第1版的基礎上,針對讀者的建議做了很多修改和補充,主要包括:
對第1章的效能調優技術和思想進行細化和補充完善。
在第4章的應用中介軟體的效能分析與調優中補充了Spring Boot的效能調優。
在第6章的MySQL資料庫效能分析中增加了效能定位和調優實踐。
在第7章的效能測試、分析與調優案例實踐中補充了更多的實踐案例和筆者多年的經驗總結。
增加第9章前端效能分析。
升級本書中用到的相關軟體版本,以及對第1版中的部分錯誤進行修正和完善。
本書適合的讀者
本書面向軟體研發和測試崗的讀者,理論和實踐相結合,詳細講解軟體效能分析、診斷和調優實踐。本書的內容更側重於如何去發現效能問題、分析診斷效能問題,以及對發現的效能問題進行調優。升級之後的第2版更加貼近當前軟體測試技術的更新換代,筆者堅信讀完本書的讀者,肯定不會再為“效能問題”而發愁。
鳴謝
學習和交流是一個持久的過程,我們需要不斷地去適應這個高速發展的技術時代,軟體技術永遠在不斷地變革,軟體效能也會越來越快。從本書第1版的讀者反饋情況來看,讀者已經建立對本書的長期信任,所以這本書未來也會順應技術的發展持續更新下去。
感謝讀者對第1版的支援和建議,正是因為有了大家的支援和建議,才有了這本書的第2版。也感謝讀者指出了第1版中很多的不足之處,才讓筆者有了更大的寫作動力。
特別感謝清華大學出版社夏毓彥編輯一直對我的支援和鼓勵,特別感謝蔣彪等眾多摯友在我最困難的時候給於很多的幫助,特別感謝福特中國企業技術高階總監黃紀南為本書寫推薦序,特別感謝部門領導周揚對我的鼓勵。
由於筆者水平和時間的限制,書中難免會存在一些不足之處,還請讀者指正,也懇請讀者提出更多寶貴的意見和建議。
筆者,於南京
2024年1月