台灣最大程式設計社群網站
線上人數
1108
 
會員總數:245394
討論主題:189183
歡迎您免費加入會員
討論區列表 >> 專欄文章 >> 改善ASP效能的訣竅-21 (Nancy Cluts 著)
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
改善ASP效能的訣竅-21 (Nancy Cluts 著)
價值 : 0 QP  點閱數:1968 回應數:0

樓主

站務人員 站長
門外漢
0 1580
542 9
發送站內信

捐贈 VP 給 站務人員
訣竅 21:啟用瀏覽器和 Proxy 快取
在預設情況下,ASP 取消在瀏覽器和 Proxy 中的快取。這是有意義的,因為就本質而言,ASP 畫面是動態的,上面不斷有潛在的對時間敏感的資訊。如果頁面不要求在每個檢視上重新顯示,您應啟動瀏覽器和 Proxy 快取。這可使瀏覽器和 Proxy 在您可以控制時間長短的一定時間內使用頁面的「快取」副本。快取可以大大地減輕伺服器上的負載,並可改善使用者的使用經驗。

哪一種動態頁面可作為要快取的頁面呢?下面舉一些範例:

天氣預報頁面,在此頁面上,每隔 5 分鐘更新一次天氣預報。
列出新聞項目或新聞稿的首頁,一天更新兩次。
共同基金績效清單,在此清單中,基本統計資料每隔幾小時更新一次。
注意,在使用瀏覽器或 Proxy 快取的情況下,Web 伺服器上記錄的存取次數變少了。如果您想準確地測量所有整頁檢視,或張貼通告,您就不希望使用瀏覽器和 Proxy 快取。

瀏覽器快取由 HTTP「過期」標頭控制,該標頭由 Web 伺服器傳送給瀏覽器。ASP 提供兩個簡單的機制傳送此標頭。要設定畫面使其過多少分鐘後到期,則應設定 Response.Expires 屬性。下面的範例告訴瀏覽器內容在 10 分鐘內過期:

<% Response.Expires = 10 %>


若將 Response.Expires 設定為負數或 0,則停用快取。請確定要使用大的負數,如 -1000 (略多於一天),以避免伺服器和瀏覽器小時鐘之間不相符。第二個屬性 Response.ExpiresAbsolute 可以讓您設定內容過期的具體時間:

<% Response.ExpiresAbsolute = #May 31,2001 13:30:15# %>


您可以不使用 Response 物件設定過期時間,而將 <META> 標記寫進 HTML,通常寫在 HTML 檔案的 <HEAD> 部分。有些瀏覽器將遵照此指令,而 Proxy 則不然。

<META HTTP-EQUIV=?Expires? VALUE=?May 31,2001 13:30:15?>


最後,您可以使用 Response.CacheControl 屬性,指示其內容是否可以讓 HTTP Proxy 快取。若將此屬性設定為「Public」,Proxy 就可以快取此內容。

<% Response.CacheControl = ?Public? %>


在預設情況下,此屬性被設定為「Private」。注意,對於顯示某使用者特定資料的畫面,不應啟動 Proxy 快取,因為 Proxy 可能會提供使用者屬於其他使用者的畫面。

本篇文章發表於2000-09-09 00:00
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
目前尚無任何回覆
   

回覆
如要回應,請先登入.