網站緩存(瀏覽器)

本文分享自華為雲社區《面試官怒瞭:多級緩存不瞭解怎麼行,那可是數量級的提升?》,作者: 知識淺談 。從客戶端到服務端,多級緩存層層剖析總結為什麼需要用緩存?因為受制於機械硬盤的讀寫耗時的原因,即使是SSD這種固態硬盤,其讀寫IO耗時也是一個不小的耗時,所以就引出瞭內存中存儲,也就是緩存的概念。像是電商這種讀多寫少的環境更適合使用多級緩存來提高讀取的效率。多級緩存都包含哪些方面客戶端(瀏覽器)層、Nginx(負載均衡)層 、進程內部層、 分佈式(Redis)層客戶端層緩存主要是對html種css,js,圖片等一些靜態資源進行緩存到本地,在之後進行網頁訪問的時候後就不用再次去服務端去獲取瞭。常用的像是百度的logo標志是設置expires這個過期時間來限制這個logo靜態資源的多次訪問。Nginx/CDN層緩存CDN內容分發網絡/Nginx負載均衡層是主要通過在CDN的節點或者是Nginx的節點上進行緩存來達到內容的緩存便於快速的查找資源。CDN層緩存Nginx層緩存:進程內部層緩存作為進程內部緩存的意思是在運行的過程中,應用數據被載入到進程中的,通過本地內存的低延遲高吞吐的特性來調高數據資源的查詢效率。像是Mybatis的一二級緩存,Hibernate,Springmvc的頁面緩存,對於這些緩存的實現有Ehcache等。分佈式Redis緩存針對分佈式的架構中,我可以使用Redis這種Nosql數據庫對整體架構中應用數據進行緩存,一般想起緩存我們都是使用Redis來解決其實,在高並發的環境中所有的請求都打到Redis這種nosql緩存上也不是一個好的選擇,所以還像是靜態資源還需要客戶端緩存和Encache這種進程中的緩存來一起實現。總結針對從客戶端到服務的不同層面做瞭一個總體不同的緩存實現形式的總結,希望對你有所幫助。

本文出自快速备案,转载时请注明出处及相应链接。

本文永久链接: https://kuaisubeian.cc/48281.html

kuaisubeian