キャッシュの浸透、キャッシュの内訳、キャッシュなだれの概念、および対応する回避方法

キャッシュ浸透

コンセプト

キャッシュペネトレーションとは、データベースに存在してはならないデータのクエリを指します。キャッシュプロセスの通常の使用法は、データクエリが最初にキャッシュクエリを実行することです。キーが存在しないか、キーの有効期限が切れている場合、データベースがクエリされ、クエリされたオブジェクトがキャッシュに配置されます。データベースクエリオブジェクトが空の場合、それはキャッシュに入れられません

治療計画

オプション1。

クエリが空の場合は、redisの値が空になるまでこのキーを入力し、ビジネスに応じて有効期限を5分以内に設定します

データベースに存在しない多数のキーを要求したり、redisを直接爆発させるなど、この種の問題が攻撃される可能性があります。これは、有効期限をできるだけ短く設定するのに適していますが、大量のデータを同時に回避するルールはありません
。解決策2

ブルームフィルターを使用する

キャッシュの内訳

コンセプト

キャッシュの内訳は、非常に高温で常に大きな同時実行性を保持しているキーを指します。大きな同時実行性は、このポイントへのアクセスに重点を置いています。キーが現時点で失敗すると、継続的な大きな同時実行性がキャッシュを突破し、データベースに直接要求します、障壁に切り込まれた穴のように。

治療計画

有効期限なしに設定

アクセス時にメモリを占有しないようにするために、ホットスポットデータのIDを保存してバッチで削除できます

キャッシュなだれ

コンセプト

キャッシュ雪崩とは、キャッシュセットが期限切れになり、一定期間内に期限切れになることを意味します。

治療計画

一般に、さまざまなカテゴリの製品が取得され、さまざまな期間キャッシュされます。同じカテゴリの商品にランダムな要素を加えたもの。このようにして、キャッシュの有効期限を可能な限り分散することができ、人気のあるカテゴリの製品のキャッシュ時間は長くなり、人気のあるカテゴリの製品のキャッシュ時間は短くなり、キャッシュサービスのリソースも節約できます。

参考資料

https://baijiahao.baidu.com/s?id=1619572269435584821&wfr=spider&for=pc
https://developpaper.com/cache-penetration-cache-breakdown-cache-avalanche-solution-analysis/

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

おすすめ

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