<s id="xcxsa"></s><rp id="xcxsa"></rp>

  • <span id="xcxsa"><pre id="xcxsa"><rt id="xcxsa"></rt></pre></span>
    <dd id="xcxsa"></dd><tbody id="xcxsa"></tbody>
        首頁 Redis教程緩存技術介紹

        CDN技術介紹

        運維派隸屬馬哥教育旗下專業運維社區,是國內成立最早的IT運維技術社區,歡迎關注公眾號:yunweipai
        領取學習更多免費Linux云計算、Python、Docker、K8s教程關注公眾號:馬哥linux運維

        緩存技術

        緩存是為了調節速度不一致的兩個或多個不同的物質的速度,在中間對速度較快的一方起到一個加速訪問速度較慢
        的一方的作用,比如CPU的一級、二級緩存是保存了CPU最近經常訪問的數據,內存是保存CPU經常訪問硬盤的數
        據,而且硬盤也有大小不一的緩存,甚至是物理服務器的raid 卡有也緩存,都是為了起到加速CPU 訪問硬盤數據
        的目的,因為CPU的速度太快了,CPU需要的數據由于硬盤往往不能在短時間內滿足CPU的需求,因此PCU緩存、
        內存、Raid 卡緩存以及硬盤緩存就在一定程度上滿足了CPU的數據需求,即CPU 從緩存讀取數據可以大幅提高
        CPU的工作效率。

        緩存技術介紹插圖

        參考資料:http://www.sohu.com/a/246498483_468626

        1.1 系統緩存

        1.1.1 buffer與cache

        buffer:緩沖也叫寫緩沖,一般用于寫操作,可以將數據先寫入內存在寫入磁盤,buffer 一般用于寫緩沖,用于解決不同介質的速度不一致的緩沖,先將數據臨時寫入到里自己最近的地方,以提高寫入速度,CPU會把數據先寫到內存的磁盤緩沖區,然后就認為數據已經寫入完成看,然后由內核在后續的時間在寫入磁盤,所以服務器突然斷電會丟失內存中的部分數據。
        cache:緩存也叫讀緩存,一般用于讀操作,CPU讀文件從內存讀,如果內存沒有就先從硬盤讀到內存再讀到
        CPU,將需要頻繁讀取的數據放在里自己最近的緩存區域,下次讀取的時候即可快速讀取。

        1.1.2 cache的保存位置

        客戶端:瀏覽器

        內存:本地服務器、遠程服務(如:redis,memcached)

        硬盤:本機硬盤、遠程服務器硬盤(如:NFS存儲)

        1.1.3 Cache的特性

        自動過期:給緩存的數據加上有效時間,超出時間后自動過期刪除

        強制過期:源網站更新圖片后CDN是不會更新的,需要強制是圖片緩存過期 ,通過CDN管理后臺實現

        命中率:即緩存的讀取命中率

        緩存技術介紹插圖1

        1.2 用戶層緩存

        1.2.1 DNS緩存

        默認為60秒,即60秒之內在訪問同一個域名就不在進行DNS解析: 查看chrome瀏覽器的DNS緩存:

        chrome://net-internals/#dns

        緩存技術介紹插圖2

        1.2.2 火狐瀏覽器緩存
        about:cache

        緩存技術介紹插圖3

        緩存技術介紹插圖4

        1.2.3 瀏覽器緩存過期機制
        1.2.3.1 最后修改時間

        系統調用文件的時候會獲取文件的最后修改時間,和本地瀏覽器緩存中的文件時間相比,如果沒有發生變化就返回給瀏覽器304的狀態碼,表示沒有發生變化,然后瀏覽器就使用的本地的緩存展示資源,如果服務端返回最后修改時間沒有發生過變化,則直接使用瀏覽器的本地緩存,狀態碼就是304

        緩存技術介紹插圖5

        緩存技術介紹插圖6

        緩存技術介紹插圖7

        1.2.3.2 Etag標記

        基于Etag標記是否一致做判斷頁面是否發生過變化,比如基于Nginx 的etag on來實現。

        緩存技術介紹插圖8

        過期時間

        以上兩種都需要發送請求,即不管資源是否過期都要發送請求進行協商,這樣會消耗不必要的時間,因此有了緩存
        的過期時間,即第一次請求資源時響應報文帶有資源的過期時間,默認為30天,當前此方式使用的比較多,但是無法保證客戶的時間都是準確并且一致的,因此會加入一個最大生存周期,使用用戶本地的時間計算緩存數據是否超過多少天,下面的過期時間Expires:為2028年,但是緩存的最大生存周期Cache-Control: max-age=315360000,計算為天等于3650天即10年,過期時間如下:
        緩存技術介紹插圖9

        本文鏈接:http://m.abandonstatusquo.com/35458.html

        CDN技術介紹

        網友評論comments

        發表評論

        您的電子郵箱地址不會被公開。

        暫無評論

        Copyright ? 2012-2022 YUNWEIPAI.COM - 運維派 京ICP備16064699號-6
        掃二維碼
        掃二維碼
        返回頂部
        十分钟免费观看视频高清下载