快取那些事

2021-08-07 21:59:31 字數 791 閱讀 1992

從看大公司的前端效能優化到自己專案實戰,快取是一件極其有意思的事情之一(還有正則,函式,再扯就跑題了。。。)。

在此我們先把邏輯流程走一遍。

etag:

這是啥:請求head中的乙個屬性',

幹啥的:幫助伺服器控制web端的快取驗證',

怎麼幹的:當瀏覽器請求伺服器的某項資源(a)時, 伺服器根據a算出乙個值hash(有人說是雜湊,如下圖中)並通過etag 返回給瀏覽器,瀏覽器把hash 和 a 同時快取在本地,當下次再次向伺服器請求a時,會通過類似if-none-match: hash的請求頭把etag傳送給伺服器,伺服器再次計算a的雜湊值並和瀏覽器傳入的值做比較,如果發現a發生了變化就把a返回給瀏覽器(200),如果發現a沒有變化就給瀏覽器返回乙個304未修改。這樣通過控制瀏覽器端的快取,可以節省伺服器的頻寬,因為伺服器不需要每次都把全量資料返回給客戶端。

與last-modified區別:last-modified的精確度為s(秒),比較適合不太敏感的靜態資源。

適用於:①一些文

,這個時候我們並不希望客戶端認為這個檔案被修改了,而重新get;② 某些檔案的修改在s級以下;③伺服器無法獲得最終修改時間

第一次傳送http請求 獲取 伺服器 資源,此時本地是無快取的,頁面從伺服器獲取到 資源和資源的last-modified屬性(檔案的最後修改日期),第二次請求的時候會傳送其與伺服器端進行比較,如果其大於相等伺服器端則使用快取返回304小於則重新獲取資源返回200

快取那些事之快取簡介

www是網際網路上最受歡迎的應用之一,其快速增長造成網路擁塞和伺服器超載,導致客戶訪問延遲增大,www服務質量日益顯現出來。快取技術被認為是減輕伺服器負載 降低網路擁塞 增強www可擴充套件性的有效途徑之一,其基本思想是利用客戶訪問的時間區域性性 temproral locality 原理,將客戶訪...

快取那些事之快取簡介

快取技術被認為是減輕伺服器負載 降低網路擁塞 增強www可擴充套件性的有效途徑之一,其基本思想是利用客戶訪問的時間區域性性原理,將客戶訪問過的內容在cache中存放乙個副本,當該內容下次被訪問時,不必連線到駐留 而是由cache中保留的副本提供。web內容可以快取在客戶端 伺服器以及伺服器端。研究表...

關於快取的那些事

cookie的缺陷是非常明顯的 1.資料大小 作為儲存容器,cookie的大小限制在4kb左右這是非常坑爹的,尤其對於現在複雜的業務邏輯需求,4kb的容量除了儲存一些配置欄位還簡單單值資訊,對於絕大部分開發者來說真的不知指望什麼了。2.安全性問題 由於在http請求中的cookie是明文傳遞的 ht...