Cache Aside Pattern(缓存模式)
生活随笔
收集整理的這篇文章主要介紹了
Cache Aside Pattern(缓存模式)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本文主要討論這么幾個問題:
(1)“緩存與數據庫”需求緣起
(2)“淘汰緩存”還是“更新緩存”
(3)緩存和數據庫的操作時序
一、需求緣起
場景介紹
緩存是一種提高系統讀性能的常見技術,對于讀多寫少的應用場景,我們經常使用緩存來進行優化。例如對于用戶的余額信息表account(uid, money),業務上的需求是:
(1)查詢用戶的余額,SELECT money FROM account WHERE uid=XXX,占99%的請求
(2)更改用戶余額,UPDATE account SET money=XXX WHERE uid=XXX,占1%的請求
由于大部分的請求是查詢,我們在緩存中建立uid到money的鍵值對,能夠極大降低數據庫的壓力。
讀操作流程
有了數據庫和緩存兩個地方存放數據之后(uid->money),每當需要讀取相關數據時(money),操作流程一般是這樣的:
(1)讀取緩存中是否有相關數據,uid->money
(2)如果緩存中有相關數據money,則返回【這就是所謂的數據命中“hit”】
(3)如果緩存中沒有相關數據money,則從數據庫讀取相關數據money【這就是所謂的數據未命中“miss”】,放入緩存中uid->money,再返回
緩存的命中率 = 命中緩存請求個數
總結
以上是生活随笔為你收集整理的Cache Aside Pattern(缓存模式)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: workerman的基本用法
- 下一篇: TCP/UDP协议基本概念