1.0.0 to 1.1.0
Microsoft ASP.NET Web Optimization Framework 1.1.0-alpha1最快取得的方式是透過NuGet。此1.1.0版本除了修正一些Bug外,再提供三個功能,分別是「CDN fallback」、「Element template strings」、「Virtual Path Provider」。
Microsoft ASP.NET Web Optimization Framework 1.1.0-alpha1最快取得的方式是透過NuGet。此1.1.0版本除了修正一些Bug外,再提供三個功能,分別是「CDN fallback」、「Element template strings」、「Virtual Path Provider」。
在ASP.NET MVC 4網站開發美學第5.6小節談到【合併與最佳化】這個主題,內容中討論的相關功能就是由【System.Web.Optimization.dll】所提供,以前必須由擴充套件來達到的功能,現在都由ASP.NET MVC 4內建的System.Web.Optimization.dll提供,我查了一下書中的截圖,在Visual Studio 2010 RTM版本內版本為1.0.0-beta2,應該是安裝了Visual Studio 2012 Update 1,所以目前開啟的專案已內已經是版本1.0.0。以下會補充一些書藉沒有的內容,共有二篇補充資料,此為第一篇,第二篇會討論Microsoft ASP.NET Web Optimization Framework 1.1.0-alpha1這個下一版本又會提供那些新功能。
由http://www.asp.net/mvc/tutorials/mvc-4/bundling-and-minification提供了一分資料,有使用B/M與沒有使用B/M的差異:
項目 | 使用B/M | 未用B/M | 改善 |
---|---|---|---|
檔案請求 | 9 | 34 | 256% |
KB傳送 | 3.26 | 11.92 | 266% |
KB接收 | 388.51 | 530 | 36% |
載入時間 | 510 MS | 780 MS | 53% |
- 減少發出HTTP請求 (Minimize HTTP Requests)
- 使用內容分散式網路 (Use a Content Delivery Network (CDN))
- 避免空白的 src 或 href (Avoid empty src or href)
- 增加過期或Cache-Control標頭(add an Expires or a Cache-Control Header)
- 使用Gzip 組件(Gzip Components)
- 樣式表(CSS檔案)放在最頂端(Put StyleSheets at the Top)
- 腳本(JavaScript檔案)放在最底端(Put Scripts at the Bottom)
- 避免 CSS 表達式(Avoid CSS Expressions)
- 將 JavaScript 與 CSS 放在外部檔案(Make JavaScript and CSS External)
- 減少 DNS 查詢(Reduce DNS Lookups)
- 壓縮 JavaScript 與 CSS(Minify JavaScript and CSS)
- 避免重導向(Avoid Redirects)
- 刪除重複的腳本(JavaScript檔案)(Remove Duplicate Scripts)
- 設置 ETags(Configure ETags)
- 讓AJAX能快取(Make AJAX Cacheable)
- 在AJAX請求中使用 GET 方法(Use GET for AJAX Requests)
- 減少DOM元素數量(Reduce the Number of DOM Elements)
- 不要有HTTP 404錯誤(No 404s)
- 減少 Cookie 大小(Reduce Cookie Size)
- 為組件使用 Cookie-free 網域(Use Cookie-free Domains for Components)
- 避免過濾器(Avoid Filters)
- 不要在HTML裡使用縮放圖片(Do Not Scale Images in HTML)
- 讓favicon.ico圖小且能快取(Make favicon.ico Small and Cacheable)