データベースとredisデータの整合性を確保する方法は?(改善予定)

オプション1

具体的な説明

読み取り操作だけがキャッシュを更新します。読み取り操作がキャッシュにヒットしない場合は、データベースにアクセスしてクエリを実行し、次に
キャッシュに書き戻します。
書き込み操作は最初にデータベースに書き込み、次にキャッシュを削除します

既存の問題

Redisは削除できない場合は終了します。
もちろん、最初にキャッシュを無効にしてからライブラリを更新すると、問題も発生します。Redisはマルチスレッドで他のスレッドによって更新されるため、redisは常にデータを盗まれる

オプション2:

具体的な説明

binlogとmqをリッスンしてredisを非同期に更新する

既存の問題

マスタースレーブ遅延によりデータが失われますか?

リアム03/15/2020 10:38 PM
遅延とデータ損失は2つの問題です

強い心2020/03/15 10:38 pm Hushan
スキームの方が信頼性が高いと思います。メモリキューは非同期でシリアル化されます

強い心03/03/2020 22:38 PM
これがデータ損失の原因です

強い心2020/03/15 10:39 pm
非同期の同期データ、データラインの損失に関する問題が必ず発生します

元の記事を33件公開しました 賞賛されました37 再生回数110,000回

おすすめ

転載: blog.csdn.net/hagle_wang/article/details/104890625