瀏覽器快取

瀏覽器快取(Browser Caching)是為了加速瀏覽,瀏覽器在用戶磁碟上對最近請求過的文檔進行存儲,當訪問者再次請求這個頁面時,瀏覽器就可以從本地磁碟顯示文檔,這樣就可以加速頁面的閱覽。它是網站訪問統計最難解決的問題之一。
但是,Web伺服器可能因此而未計算一個頁面或廣告已被閱覽的次數。
快取的方式節約了網路的資源,提高了網路的效率。
自動清理IE快取的方法:打開IE,選擇“工具--internet選項”,切換到“高級”選項卡,找到“關閉瀏覽器時清空internet臨時資料夾”,並將其選中,確定即可.
要清空 Mozilla Firefox 的快取,請按以下步驟操作:
註銷您的 AdSense 帳戶。關閉所有其他打開的瀏覽器視窗。
單擊瀏覽器頂部的"Tools"(工具)選單,並選擇"Options"(選項)。
單擊"Privacy"(隱私)。
單擊"Cache"(高速緩衝)旁邊的"Clear"(清空快取)。
單擊"OK"(確定)。
要清空 Mozilla 和 Netscape 的快取,請按以下步驟操作:
註銷您的 AdSense 帳戶。關閉所有其他打開的瀏覽器視窗。
單擊瀏覽器頂部的"Edit"(編輯)選單,然後選擇"Preferences"(首選項)。
單擊"Advanced"(高級)旁邊的"+"。
單擊"Advanced"(高級)下面的"Cache"(高速快取)。
單擊"Clear Cache"(清除高速快取)。
單擊"OK"(確定)。
要清空 Safari 的快取,請按以下步驟操作:
註銷您的 AdSense 帳戶。關閉所有其他打開的瀏覽器視窗。
打開瀏覽器工具列中的"Safari"選單。
選擇"Empty Cache"(清空快取)。
單擊該對話框中的"Empty"(清空)。
某些情況下,可能需要多次清空您的快取。
瀏覽器快取主要有兩類
快取協商:Last-midified ,Etag
徹底快取:cache-control,expires
快取協商的意思是需要去伺服器端詢問頁面有沒有修改過,沒有修改過則返回304直接使用快取內容,否則返回新內容
協商步驟:
伺服器傳送帶Last-midified:GMTtime 頭的http response
瀏覽器下次請求時帶上if-modified-since:GMTtime http 請求頭
服務端用本地Last-midified時間與if-modified-since比較,計算瀏覽器數據是否過期並傳送回響
Etag的工作原理與Last-midified類似,不同點在於Etag的值是用戶可自定義的
快取協商可套用在動態頁面且實時性不是特彆強的頁面,如網站首頁
徹底快取
徹底快取的意思是在快取失效之前不再需要跟伺服器互動
常用的是Expires,Expires的值是一個絕對時間,由伺服器產生
這兒存在一個問題,就是伺服器的時間可能給客戶端的時間不一致導致快取時間的偏差
要解決這個問題就要使用cache-control,它保存的是一個相對瀏覽器的時間
如果同時存在cache-control和Expires怎么辦呢?
瀏覽器總是優先使用cache-control,如果沒有cache-control才考慮Expires
瀏覽器快取最大的價值是節省了頻寬
為什麼沒有提高吞吐率呢? 下面來分析一下
這裡分兩種情況:靜態頁面和動態頁面
服務端載入靜態頁面需要進行磁碟IO,瀏覽器快取則可節省這部分時間,不過伺服器一般會用squid等工具進行快取,所以靜態資源在提高吞吐率方面效果不明顯
再來看一看動態資源
動態資源也分為兩類:實時動態和準實時動態
實時動態是不能用瀏覽器快取的
準實時動態頁面可節省磁碟IO和計算時間,但是讓瀏覽器快取的時間不可太久,且在本地重複訪問的機率也不大
所以說動態內容在提高吞吐率方面效果也不明顯
對於準實時動態頁面倒是可以快取在服務端,如squid

相關詞條

相關搜尋

熱門詞條

聯絡我們