別再犯低級錯誤,帶你瞭解更新緩存的四種Desigh Pattern

在我們使用分佈式緩存Redis或者Memcached編寫更新緩存數據代碼時,我們總是會犯一個邏輯錯誤。先刪除緩存,然後再更新數據庫,而後續的操作會把數據再裝載的緩存中。試想,兩個併發操作,一個是更新操作,另一個是查詢操作,更新操作刪除緩存後,查詢操作沒有命中緩存,先把老數據讀出來後放到緩存中,然後更新操作更新了數據庫。於是,在緩存中的數據還是老的數據,導致緩存中的數據是髒的,而且還一直這樣髒下去了
相關文章
相關標籤/搜索