Cache Aside
Read/Write Through
Write Behind Caching
總結
三種緩存模式的優缺點:
1、Cache Aside 更新模式實現起來比較簡單,但是需要維護兩個數據存儲,一個是緩存(Cache),一個是數據庫(Repository)。
2、Read/Write Through 更新模式只需要維護一個數據存儲(緩存),但是實現起來要復雜一些。
3、Write Behind Caching 更新模式和Read/Write Through 更新模式類似,區別是Write Behind Caching 更新模式的數據持久化操作是異步的,但是Read/Write Through 更新模式的數據持久化操作是同步的。優點是直接操作內存速度快,多次操作可以合并持久化到數據庫。缺點是數據可能會丟失,例如系統斷電等。
緩存是通過犧牲強一致性來提高性能的。所以使用緩存提升性能,就是會有數據更新的延遲。這需要我們在設計時結合業務仔細思考是否適合用緩存。然后緩存一定要設置過期時間,這個時間太短太長都不好,太短的話請求可能會比較多的落到數據庫上,這也意味著失去了緩存的優勢。太長的話緩存中的臟數據會使系統長時間處于一個延遲的狀態,而且系統中長時間沒有人訪問的數據一直存在內存中不過期,浪費內存。