市區(qū)內(nèi)哪家北京網(wǎng)絡(luò)公司做北京網(wǎng)站建設(shè)做得好?
最佳答案:渝網(wǎng)互聯(lián),在百度里面直接搜:渝網(wǎng)互聯(lián),就可以搜到聯(lián)系方式:023-65309616
Web性能優(yōu)化最佳實(shí)踐中最重要的一條是減少HTTP請(qǐng)求,它也是YSlow中比重最大的一條規(guī)則。減少HTTP請(qǐng)求的方案主要有合并JavaScript和CSS文件、CSS Sprites、圖像映射(Image Map)和使用Data URI來(lái)編碼圖片。CSS Sprites和圖像映射現(xiàn)在已經(jīng)隨處可見了,但由于IE6和IE7不支持Data URI以及性能問題,這項(xiàng)技術(shù)尚未大量使用。目前大部分網(wǎng)頁(yè)中的JavaScript和CSS文件數(shù)量和開發(fā)時(shí)一致,少量的網(wǎng)頁(yè)會(huì)根據(jù)實(shí)際情況采取本地合并,這些合并中相當(dāng)多的是有選擇地手動(dòng)完成,每次新的合并都需要重新在本地完成并上傳到服務(wù)器,比較的隨意和繁瑣,同樣文件的壓縮也有類似的情況。而利用服務(wù)端的合并和壓縮,我們就可以按照開發(fā)的邏輯盡可能讓文件的顆粒度變小,利用網(wǎng)頁(yè)中URL的規(guī)則來(lái)自動(dòng)實(shí)現(xiàn)文件的合并和壓縮,這會(huì)相當(dāng)?shù)撵`活和高效。
YUI Combo Handler
2008年7月YUI Team宣布在YAHOO! CDN上對(duì)YUI JavaScript組件提供Combo Handler服務(wù)。Combo Handler是Yahoo!開發(fā)的一個(gè)Apache模塊,它實(shí)現(xiàn)了開發(fā)人員簡(jiǎn)單方便地通過URL來(lái)合并JavaScript和CSS文件,從而大大減少文件請(qǐng)求數(shù)。比如在頁(yè)面上使用YUI2的Rich Text Editor組件需要引入多個(gè)JavaScript文件,常用方式如下:
|
而使用Combo Handler服務(wù)之后,則上述的代碼可以寫為:
|
除了代碼的可讀性稍稍有一點(diǎn)點(diǎn)降低外,使用Combo Handler服務(wù)大大的降低了HTTP請(qǐng)求數(shù),同時(shí)也減少了URL代碼量,這對(duì)于Web性能優(yōu)化來(lái)講至關(guān)重要。所以,隨后YUI從2.6.0開始,其核心組件YUI Loader內(nèi)置了Combo Handling功能,即使用YUI Loader時(shí),通過配置combine屬性就可以把要加載的多個(gè)JavaScript或CSS文件按照使用Combo Handler服務(wù)的形式合并起來(lái),這時(shí)只要靜態(tài)文件的服務(wù)器支持Combo Handler就行了。在YUI中當(dāng)combine配置為true時(shí),CDN默認(rèn)是使用Yahoo! CDN(http://yui.yahooapis.com),所以沒有任何問題。這正是YUI最迷人的地方之一。
遺憾的是http://yui.yahooapis.com在中國(guó)的速度并不佳,本來(lái)中國(guó)雅虎提供http://cn.yui.yahooapis.com/ ,但尚未提供Combo Handler服務(wù),同時(shí)因種種原因,其更新在YUI 2.7.0之后就停滯了。更糟糕的是Yahoo!開發(fā)的支持Combo Handler的Apache模塊雖然據(jù)傳有計(jì)劃開源,但至少現(xiàn)在依舊是私有技術(shù),要使用就需要自己實(shí)現(xiàn)類似功能,所以國(guó)內(nèi)類似技術(shù)的應(yīng)用并不太多。