首先根據(jù)業(yè)務(wù)需求,是選保證數(shù)據(jù)的 強一致性 或 最終一致性
一合住、強一致性
????更新數(shù)據(jù)前先加緩存鎖绰精,使其他請求該緩存數(shù)據(jù)的線程做等待,更新數(shù)據(jù)庫再更新緩存后透葛,釋放鎖
缺點:在高并發(fā)的情況下笨使,會存在大量請求阻塞等待鎖
二、最終一致性
1获洲、異步延遲刪除(延遲雙刪)
????先刪除緩存阱表,再更新數(shù)據(jù)庫,休眠1秒再刪除緩存
????需要評估自己的項目的讀數(shù)據(jù)業(yè)務(wù)邏輯的耗時贡珊。確保讀請求結(jié)束最爬,寫請求可以刪除讀請求造成的緩存臟數(shù)據(jù)。
2门岔、異步延遲刪除
????先刪除緩存爱致,再更新數(shù)據(jù)庫,觸發(fā)異步寫人串行化mq,接收MQ消息刪除緩存