《MySQL與Redis緩存一致性問題》 進擊的小科Redis就是一個使用C語言開發的數據庫,為了避免使用MySQL請求過多影響性能,就會采用它。高並發場景下保持mysql與redis數據的一致性問題不容忽視。 場景:線程A,修改數據,線程B使用數據。1、雙刪策略:線程A寫數據時,先刪除redis的數據,然後修改mysql,之後再刪除redis的數據。問題:線程A在修改mysql的時候,線程B先讀取了數據,接著線程A執行完畢,此時redis中沒有數據了,接著線程B處理業務然後設置redis緩存,此時redis中的數據還是線程A修改前的數據。2、延遲雙刪策略:線程A寫數據時,先刪除redis的數據,然後修改mysql,之後再延遲一個業務時間後刪除redis的數據。問題:該策略無法包括這個延遲時間;並且會影響系統的處理能力。3、讀寫串行化:只要讀和寫是並發產生的就必然會存在,數據一致性問題。如果要徹底解決該問題,就要串行。該中方式會影響效率,如果采用可以做好壓力測試。使用分布式鎖:影響效率使用隊列:將操作同一資源的請求,打到同一個隊列中。4、cancel:同步mysql的bin_log,更新redis。該方式也會存在延遲。5、redis設置失效時間 《MySQL與Redis緩存一致性問題》完,請繼續朗讀精采文章。 喜歡 小編的世界 e4to.com,請記得按讚、收藏及分享!
音調
速度
音量
語言
MySQL與Redis緩存一致性問題
精確朗讀模式適合大多數瀏覽器,也相容於桌上型與行動裝置。
不過,使用Chorme瀏覽器仍存在一些問題,不建議使用Chorme瀏覽器進行精確朗讀。