tft每日頭條

 > 生活

 > 浏覽器調接口清緩存

浏覽器調接口清緩存

生活 更新时间:2024-11-23 19:06:05

本文分享自華為雲社區《面試官怒了:多級緩存不了解怎麼行,那可是數量級的提升?》,作者: 知識淺談 。

從客戶端到服務端,多級緩存層層剖析總結

  1. 為什麼需要用緩存?因為受制于機械硬盤的讀寫耗時的原因,即使是SSD這種固态硬盤,其讀寫IO耗時也是一個不小的耗時,所以就引出了内存中存儲,也就是緩存的概念。像是電商這種讀多寫少的環境更适合使用多級緩存來提高讀取的效率。
  2. 多級緩存都包含哪些方面
  3. 客戶端(浏覽器)層、Nginx(負載均衡)層 、進程内部層、 分布式(Redis)層
客戶端層緩存

主要是對html種css,js,圖片等一些靜态資源進行緩存到本地,在之後進行網頁訪問的時候後就不用再次去服務端去獲取了。

常用的像是百度的logo标志是設置expires這個過期時間來限制這個logo靜态資源的多次訪問。

浏覽器調接口清緩存(浏覽器負載均衡)1

Nginx/CDN層緩存

CDN内容分發網絡/Nginx負載均衡層是主要通過在CDN的節點或者是Nginx的節點上進行緩存來達到内容的緩存便于快速的查找資源。

CDN層緩存

浏覽器調接口清緩存(浏覽器負載均衡)2

Nginx層緩存:

浏覽器調接口清緩存(浏覽器負載均衡)3

進程内部層緩存

作為進程内部緩存的意思是在運行的過程中,應用數據被載入到進程中的,通過本地内存的低延遲高吞吐的特性來調高數據資源的查詢效率。

像是Mybatis的一二級緩存,Hibernate,Springmvc的頁面緩存,對于這些緩存的實現有Ehcache等。

浏覽器調接口清緩存(浏覽器負載均衡)4

分布式Redis緩存

針對分布式的架構中,我可以使用Redis這種nosql數據庫對整體架構中應用數據進行緩存,一般想起緩存我們都是使用Redis來解決其實,在高并發的環境中所有的請求都打到Redis這種nosql緩存上也不是一個好的選擇,所以還像是靜态資源還需要客戶端緩存和Encache這種進程中的緩存來一起實現。

浏覽器調接口清緩存(浏覽器負載均衡)5

總結

針對從客戶端到服務的不同層面做了一個總體不同的緩存實現形式的總結,希望對你有所幫助。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved