Effective Debugging:軟件和系統(tǒng)調(diào)試的66個有效方法
本書所要講解的調(diào)試知識,包括與調(diào)試有關(guān)的策略、工具及方法。我們當前在開發(fā)并運作一款復雜的計算系統(tǒng)時,可能會遇到各種問題,而這些調(diào)試知識,則使大家能夠應對這些問題。過去我們所說的調(diào)試,主要是指檢測并修復程序錯誤,而當前卻很少有哪個程序會孤立地運作,即便是一個很小的程序,也會與外部的程序庫相鏈接(通常是動態(tài)鏈接)。更為復雜的程序會運行在應用程序服務器中,會調(diào)用Web服務,會使用關(guān)系型數(shù)據(jù)庫及NoSQL數(shù)據(jù)庫,會從目錄服務器上獲取數(shù)據(jù),會運行外部的程序,會利用其他的中間件,也會納入很多第三方的軟件包。于是,要想令整個系統(tǒng)及服務正常地運作,就必須確保其中的組件不會發(fā)生故障,這些組件可能是由公司內(nèi)部人員所開發(fā)的,也可能是由第三方所提供的,它們所在的主機或許分布在全球各地。為了應對這種局面,軟件開發(fā)行業(yè)開始重視DevOps規(guī)程,這套規(guī)程旨在同時強調(diào)開發(fā)者和其他IT專業(yè)人員所應擔負的職責。與之類似,本書想使讀者在面對故障時也能夠具備這樣一種全面的觀念,因為在面對一些極為困難的問題時,我們通常無法立刻判斷出該問題到底是由哪一個軟件組件所引發(fā)的。
·13萬字