1、快取【失效】:客戶端請求資料先從快取中查詢,如果沒有再查詢資料庫,最後將資料放入快取
2、快取【命中】:客戶端從快取中直接取到資料,返回結果
3、快取【更新】:客戶端寫入資料到資料庫,成功之後,讓快取失效(下次請求時從快取中拿不到,則查詢資料庫,再放入快取)
4、為什麼不採取更新後刪除快取策略?
防止併發寫操作導致髒資料
5、為什麼不刪除快取後再更新資料庫?
兩個併發請求,乙個讀操作,乙個寫操作,如果先刪除快取,讀操作會將【舊資料】寫入快取,寫操作【更新資料】後也不會更新快取,導致髒資料一直存在
Redis快取設計和更新策略
快取背景 對於大面積的qps請求 傳統的資料庫的讀寫分離已經無法滿足。當資料庫的最大連線數 都達到峰值,這時候如果只是一味的加資料的db機器 也許可以緩解一下db壓力。但是資料庫機器一般都比較貴,從經濟成本上來說,不可取。那麼對於像秒殺這種場景,一段時間的查詢量非常大,活動一結束查詢量就會降下來,該...
Redis快取策略
redis快取一般使用cache aside pattern原則。什麼是 cache aside pattern cache aside pattern即為旁路快取方案的經驗實踐,分為讀實踐和寫實踐。那麼運算元據的時候先操作快取還是先運算元據庫?1.讀請求 先從快取中讀取所需資料,如果沒有則從資料庫...
快取更新策略
一般來說,快取有以下三種模式 cache aside更新模式 這種策略下,在併發寫的時候可能會出現髒資料的問題。read write through 更新模式 在read write through 更新模式中,應用程式只需要維護快取,資料庫的維護工作由快取 了。read through 模式就是在...