偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

巧用HttpCombiner讓你的網(wǎng)站加速

開發(fā)
本文是在優(yōu)化實際項目中的總結(jié).HttpCombiner.ashx是一個http處理程序,通過它能夠合并多個CSS,Javascript或者url成為一個響應(yīng)讓頁面載入加速.同時它可以合并,壓縮并緩存響應(yīng),這樣就使得我們的應(yīng)用程序更快的加載和具備更好的擴(kuò)展性。

     經(jīng)過利用Microsoft Ajax Minifier在服務(wù)器端對靜態(tài)資源進(jìn)行自動化壓縮,我們的資源文件(沒指明則特指js,css靜態(tài)資源文件)已經(jīng)減肥成功,保持了苗條的身材,這樣從服務(wù)器端傳輸?shù)娇蛻舳艘矝]那么費(fèi)勁了,初步獲得小成功,但是根據(jù)<<雅虎網(wǎng)站頁面性能優(yōu)化的34條黃金守則>>http://developer.yahoo.com/performance/rules.html提供給我們的建議,讓優(yōu)化工作做得更進(jìn)一步,比如一個頁面引入了4個css文件,5個js文件(這個數(shù)目還算過得去,也許還會更多),這樣頁面載入的時候就會產(chǎn)生9個請求,加之js加載又是阻塞加載的方式,這樣也會造成一定程度上的性能損傷。尋思了一會在網(wǎng)上找到這么一個文件HttpCombiner.ashx,接下來介紹它能幫我們做的事情。

   HttpCombiner.ashx是一個http處理程序,通過它能夠合并多個CSS,Javascript或者url成為一個響應(yīng)讓頁面載入加速.同時它可以合并,壓縮并緩存響應(yīng),這樣就使得我們的應(yīng)用程序更快的加載和具備更好的擴(kuò)展性。

   用一個大的Javascript或者CSS文件替代多個小體積的Javascript和CSS文件這是一個很好的實踐,可以獲得更好的可維護(hù)性,但是在網(wǎng)站性能方面會產(chǎn)生一定的影響(這里指的是隨著文件體積的增大,隨之消耗服務(wù)器的內(nèi)存也會增加)。盡管你應(yīng)該把Javascript代碼單獨寫成小支的文件,CSS文件拆分成小塊,但是當(dāng)瀏覽器請求這些文件時,會產(chǎn)生同等數(shù)量的http請求。每個http請求都會產(chǎn)生一次從你的瀏覽器到服務(wù)器端網(wǎng)絡(luò)往返過程,并且導(dǎo)致推遲到達(dá)服務(wù)器端和返回瀏覽器端的時間,我們稱之為延遲。因此,如果你有4個Javascript和3個css文件在頁面中被加載,你浪費(fèi)掉了7次因網(wǎng)絡(luò)往返過程產(chǎn)生的時間。在美國,延遲平均是70毫秒,這樣你就浪費(fèi)了7*70 = 490毫秒,大致延遲了半秒的時間。在美國之外的國家訪問你的頁面,平均延遲大約是200毫秒,這意味著你的頁面有1400毫秒的時間是在等待中度過。瀏覽器在你的CSS和Javascript文件完全加載完成之前是不能很好的渲染你的頁面的。因此越多的延遲讓你的頁面載入越慢。

 

   延遲導(dǎo)致多大的影響

   下圖顯示每個請求的延遲造成頁面加載時顯著的延誤

HttpHandler

   你可以通過使用CDN加速來減少等待時間.閱讀我前一篇文章關(guān)于使用CDN. 然而,一個更好的解決方案是使用一個HttpHandler來合并多個文件成一個文件一次性輸出.因此,你只要將多個