本文分享自華為雲社區《面試官怒了:多級緩存不了解怎麼行,那可是數量級的提升?》,作者: 知識淺談 。
從客戶端到服務端,多級緩存層層剖析總結
主要是對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這種進程中的緩存來一起實現。
總結
針對從客戶端到服務的不同層面做了一個總體不同的緩存實現形式的總結,希望對你有所幫助。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!