緩存如何更新

在看很多博客上介紹如何更新緩存,都會說先刪緩存再更新數據庫,但是仔細一想會出現數據不一致的問題,比如一個線程A更新數據,一個線程B查詢數據,那麼就會出現下面的步驟: A線程先刪除緩存 B去請求緩存時,發現沒有緩存,就去數據庫請求數據 B將請求到的數據回寫到緩存中 A更新完數據庫 此時數據庫和緩存的數據就發生不一致了。 所以這種方式肯定不可取。還有的人說先更新數據庫再更新緩存,這也是不行的,容易出現
相關文章
相關標籤/搜索