ASP Web 應用程式:平均網頁大小的最佳實踐

ASP Web 應用程式:平均網頁大小的最佳實踐

你們對網頁的輸出大小有一些最佳實踐建議嗎?當然越小越好。我正在談論非緩存輸出。我不想返回 1 MB 的頁面。

答案1

這取決於您的用戶群以及他們擁有何種類型的網路連線。對於寬頻連接,即使使用 keepalive,渲染時間和物件數量(以及 HTTP 請求)也可能比龐大的資料量更成為瓶頸。使用 4Mbit/sec 連接的用戶可以在兩秒鐘內下載 1MB 的數據,但他們不太可能能夠如此快速地下載 50 或 100 個單獨的物件並渲染複雜的 JavaScript 和 CSS。

如果您的使用者的連線速度較慢,請計算您需要支援的最慢連線速度和可接受的最長頁面載入時間,並相應地調整頁面大小。但一定要測量和監控頁面渲染時間(我建議查看平均值、中位數和第 90 個百分位數)。

答案2

如果您將頁面拆分為多個檔案(JavaScript、CSS、圖片等),並正確使用 HTML 標頭(例如「過期」),那麼使用者載入的平均量可能會比總量少得多。例如,在我的網站上,每次載入的總檔案量為 100-200kb,但每次頁面瀏覽的平均載入量僅為其中的 10-20%。

良好的總頁面大小將根據您擁有的網站類型和您要提供的內容而有所不同。對我來說,200kb 的頁面很大,但對某些人來說這很大,而有些人可能很小。測試/基準測試您的網站載入時間始終是一個好主意。這火蟲FireFox 的擴充功能對此很方便。

對於某些類型的內容,另一種選擇是在初始頁面載入後根據需要使用 AJAX 呼叫來逐位載入資料。

答案3

你說的是 ASP 還是 ASP.NET?如果是 ASP.NET,請注意嵌入頁面中的 Viewstate 變數/欄位的大小。來自瀏覽器的任何表單回發都必須隨請求發送此隱藏字段,如果您不小心在頁面中存儲狀態,它可能會很快變得非常大。您不希望使用者每次點擊頁面上的按鈕或控制項時都上傳超過 256 KB 的檔案。

有一個名為 Viewstate Size 的不錯的小型 Firefox 擴展,它會將這些資訊放置在狀態欄中。

相關內容