摘自:http://www.cnblogs.com/chenxizhang/archive/2013/05/20/3088196.htmlhtml
其實想寫這方面的文章由來已久,這個系列文章的想法是參照雅虎團隊提供的35條性能優化的最佳實踐(其實最先的時候是14條),再結合我本身多年的實際工做經驗,結合具體的開發平臺(ASP.NET),爲讀者提供既有理論知識、又有實踐指導的參考資料,對於優化而言,自己是一個長期細緻的工做(沒有所謂的銀彈),而且重在權衡利弊,選擇最適合本身項目狀況的解決方案。而要達到這樣的目標,就須要對網站設計優化有較爲系統的認識,知其然、也知其因此然,而後才能夠熟練地運用它們。web
我從4月30日開始寫這個系列,到今天(5月20日)已經所有寫完,主要利用了假日、週末以及晚上的時間),雖然比較辛苦,但自認爲這個系列寫的質量算是我迄今爲止最好的,而且毫無疑問,我有理由藉此機會對個人家人的支持表示感謝。chrome
在這個過程當中,我也對有關的知識溫故而知新,因此說我的收穫已經很大了,若是能對閱讀者也能有所幫助,那是再好不過的了。api
這個系列的內容組織保持了雅虎團隊當年所提出的35條原則的結構,以便你們對照起來進行學習。值得一說的是,這些文檔雖然參照了原文,但不是對原文的翻譯,更多的是加入了個人一些看法以及演繹,有些地方可能還與原文有不太同樣的說明。緩存
我屢次提到權衡這個詞,就比如一個架構師被問到「什麼纔是最好的架構?」這樣的問題的時候,最合理的回答可能真的是「這個得看狀況」(雖然這樣的回答可能顯得有點像外交辭令),由於技術是不少的,架構也不少,沒有哪一個架構對全部業務場景都是合適的。性能優化
同理,咱們提到了不少原則,這些原則各自有它的側重點。很顯然,他們可能還互相有衝突。那麼,這能說明什麼呢?這難道說明這些原則不合理嗎?固然不是,正好相反,這纔是合理的。cookie
爲了幫助你們更好地瞭解這些原則之間的關係,抑或是互斥的、抑或是互補的,我整理了一個表格以下,給你們參考。網絡
圖中紅色標識出來的原則就是或多或少會有互斥的。遇到這些原則,你須要兼顧到其餘的原則,兩害相權取其輕,作出最適合於你的實際狀況的選擇。架構
沒有標識顏色的,標識這些原則是有互補性的,或者至少不衝突。工具
我在編寫本系列文章的時候,用到以下的工具
最後,但願這個系列文章對你們有些幫助!