

YSLOW
概述
什么是YSlow?
YSlow是Yahoo發布的一款基于FireFox的插件。
如何裝置YSlow?
裝置YSlow必需首先先裝置 Firebug,然后下載YSlow,再對其裝置。
YSlow有什么用?
YSlow可以對網站的頁面停止剖析,并通知你為了進步網站功能,如何基于某些規則而停止優化。
YSlow可以剖析任何網站,并為每一個規則發生一個全體報告,假如頁面可以停止優化,則YSlow會列出詳細的修正意見。
Yslow-23條規則
增加HTTP懇求次數
兼并圖片、CSS、JS,改良初次拜訪用戶等候工夫。
運用CDN
就近緩存==>智能路由==>負載平衡==>WSA全站靜態減速
防止空的src和href
當link標簽的href屬性為空、script標簽的src屬性為空的時分,閱讀器渲染的時分會把以后頁面的URL作為它們的屬性值,從而把頁面的內容加載出去作為它們的值。測試
為文件頭指定Expires
使內容具有緩存性。防止了接上去的頁面拜訪中不用要的HTTP懇求。
運用gzip緊縮內容
緊縮任何一個文本類型的呼應,包括XML和JSON,都是值得的。舊文章
把CSS放到頂部
把JS放究竟部
避免js加載對之后資源形成阻塞。
防止運用CSS表達式
將CSS和JS放到內部文件中
目的是緩存,但有時分為了增加懇求,也會直接寫到頁面里,需依據PV和IP的比例權衡。
權衡DNS查找次數
增加主機名可以節省呼應工夫。但同時,需求留意,增加主時機增加頁面中并行下載的數量。
IE閱讀器在同一時辰只能從同一域名下載兩個文件。當在一個頁面顯示多張圖片時,IE 用戶的圖片下載速度就會遭到影響。所以新浪會搞N個二級域名來放圖片。
防止跳轉
同域:留意防止反斜杠 “/” 的跳轉;
跨域:運用Alias或許mod_rewirte樹立CNAME(保管域名與域名之間關系的DNS記載)
精簡CSS和JS
刪除反復的JS和CSS
反復調用腳本,除了添加額定的HTTP懇求外,屢次運算也會糜費工夫。在IE和Firefox中不論腳本能否可緩存,它們都存在反復運算JavaScript的成績。
配置ETags
它用來判別閱讀器緩存里的元素能否和原來效勞器上的分歧。比last-modified date更具有彈性,例如某個文件在1秒內修正了10次,Etag可以綜合Inode(文件的索引節點(inode)數),MTime(修正工夫)和Size來精準的停止判別,避開UNIX記載MTime只能準確到秒的成績。 效勞器集群運用,可取后兩個參數。運用ETags增加Web使用帶寬和負載
可緩存的AJAX
“異步”并不意味著“即時”:Ajax并不能保證用戶不會在等候異步的JavaScript和XML呼應上破費工夫。
運用GET來完成AJAX懇求
當運用XMLHttpRequest時,閱讀器中的POST辦法是一個“兩步走”的進程:首先發送文件頭,然后才發送數據。因而運用GET獲取數據時愈加有意義。
防止404
有些站點把404錯誤呼應頁面改為“你是不是要找***”,這雖然改良了用戶體驗但是異樣也會糜費效勞器資源(如數據庫等)。最蹩腳的狀況是指向內部 JavaScript的鏈接呈現成績并前往404代碼。首先,這種加載會毀壞并行加載;其次閱讀器會把試圖在前往的404呼應內容中找到能夠有用的局部當作JavaScript代碼來執行。
增加DOM元素數量
能否存在一個是更貼切的標簽可以運用?人生不只僅是DIV+CSS
增加Cookie的大小
運用無cookie的域
比方圖片 CSS 等,Yahoo! 的靜態文件都在主域名以外,客戶端懇求靜態文件的時分,增加了 Cookie 的重復傳輸對主域名的影響。
不要運用濾鏡
png24的在IE6半通明那種東西,別亂使,淡定的切成PNG8+jpg
不要在HTML中縮放圖片
減少favicon.ico并緩存
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。