yahoo開發的網頁評分外掛程式YSlow的評分規則

來源:互聯網
上載者:User

YSlow是yahoo美國開發的一個頁面評分外掛程式,非常的棒,從中我們可以看出我們頁面上的很多不足,並且可以知道我們改怎麼卻改進和最佳化。

仔細研究了下YSlow的評分規則。

主要有12條:

1. Make fewer HTTP requests 儘可能少的http請求。。我們有141個請求(其中15個JS請求,3個CSS請求,47個CSS background images請求),多的可怕。思考了下,為什麼把這個三種請求過多列為對頁面載入的重要不利因素呢,而過多的IMG請求並沒有列為不利因素呢?

發現原來這些請求都是可以避免的。

15個JS和3個CSS完全可以通過特殊的辦法進行合并(這個技術部已經幫我們解決了,實在是太感謝了,嘿嘿。),這樣合并以後,一般情況下頁面上只會出現一個JS和一個CSS(對JS的封裝得有一定的要求)。

但是47個CSS background images請求改怎麼解決呢?為什麼頁面上的純IMG請求時合理的,而CSS background images請求過多就是不利因素了呢。這個我想了很久,總算明白,原來是這樣的:

一般頁面上的ICON,欄目背景啊,圖片按鈕啊,我們都會用圖片CSS背景來實現,而一般這個圖片CSS背景用到的圖片都是比較小的,所以完全可以把這些圖片合并成一個相對比較大的圖片,這樣頁面上只會出現一個CSS background images請求,最多也就2-3個。後來仔細看了下雅虎美國的頁面,他們的確也是這樣做的,雖然這樣做需要花一定的時間來有規則的合并這些ICON,欄目背景,圖片按鈕,以方便CSS調用,但是這樣做絕對是合算的,而且是有必要的,YSlow也是極力推薦的。

2.Use a CDN 這項我們的評分是F級,最低。說實在的,我剛開始什麼是CDN都不知道。後來查了GOODLE才知道。CDN的全稱是Content Delivery Network,即內容分髮網絡。其目的是通過在現有的Internet中增加一層新的網路架構,將網站的內容發布到最接近使用者的網路”邊緣”,使使用者可以就近取得所需的內容,解決Internet網路擁擠的狀況,提高使用者訪問網站的響應速度。從技術上全面解決由於網路頻寬小、使用者訪問量大、網點分布不均等原因所造成的使用者訪問網站響應速度慢的問題。

看來上述的解釋後,基本上明白了CDN是怎麼回事,後來諮詢了下中文網站SA,得知我們網站目前的確還沒有做CDN的最佳化,但是據說我們有更加先進的技術來解決類似的問題(具體什麼技術那就保密了),但是畢竟CDN也是個相當不錯的技術,所以在我們先進技術的基礎上在做CDN最佳化,肯定比現在更好,嘿嘿。據說SA明年會做幾個點的CND。

3. Add an Expires header 設置到期的HTTP Header.設定Expires Header可以將指令碼, 樣式表, 圖片, Flash等緩衝在瀏覽器的Cache中.

其實我們網站也做了這個最佳化,至少圖片在這個上做過最佳化,但是沒有做完全。我們的CSS和JS都還沒有做過最佳化,倒是外部引入的一個廣告JS做了,呵呵。其實設定到期的HTTP Header 更應該做在指令碼, 樣式表, Flash上.不過據說這個SA也是沒有做的,但是有一定的風險,因為JS和CSS是有一定的邏輯,如果伺服器端和用戶端都存在緩衝的話,萬一出了什麼問題,對我們以後尋找問題的所在和增加難度,不過我想兩者中是可以權衡和並存的。

4. Gzip components 對我們的頁面內容進行Gzip格式的壓縮,Gzip格式是一種很普遍的壓縮技術,幾乎所有的瀏覽器都有解壓Gzip格式的能力,而且它可以壓縮的比例非常大,一般壓縮率為85%,就是說伺服器端100K的頁面可以壓縮到25K左右的Gzip格式的資料發給用戶端,用戶端收到Gzip格式的資料後自動解壓縮後顯示頁面。

這點我們網站基本上是100%做到了,但是我們這項的評分並沒有達到想象中的A級,原因是出在我們的外部連結,比如我們首頁,有外部的廣告投放JS,這個JS說擁有的網站是沒有做過GZIP最佳化,連累了我們網站,所以我們也只有B,或者C級。

5. Put CSS at the top 把CSS外部連結放到頁面的頂部。

其實這個原則我們一般都遵守的,如果把CSS外部連結作為邏輯的一部分出現在頁面頭部以下,我個人覺得這個本身就是個錯誤。還好,我們的頁面基本上都做到了,可是有些頁面比如LIST頁面,還是出現了和邏輯掛鈎的CSS連結,原因是為瞭解決一些本來就不合理的產品邏輯。所以,我們WEB前端工程師有義務杜絕這些不合理的產品邏輯破壞我們的頁面結果及頁面載入速度,不能為了實現而實現。



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。