ホームページ  >  記事  >  データベース  >  どのデータを Redis に配置し、どのデータをデータベースに配置する必要がありますか?

どのデータを Redis に配置し、どのデータをデータベースに配置する必要がありますか?

(*-*)浩
(*-*)浩オリジナル
2019-11-30 09:58:484720ブラウズ

どのデータを Redis に配置し、どのデータをデータベースに配置する必要がありますか?

redis をキャッシュとして使用する場合、データをデータベースに保存する必要がありますか? (推奨される学習: Redis ビデオ チュートリアル )

どのデータを Redis に配置し、どのデータをデータベースに配置する必要がありますか?私の答えは次のとおりです:

redis は単なるキャッシュです。 mysql などのデータベースではないため、redis 内のデータベースは mysql 内にある必要があります。

ユーザー リクエストは最初に redis をリクエストし、そうでない場合はデータベースからそれを読み取ります。

比較的リクエスト量の多い一部のデータは redis にキャッシュされます (これらのキャッシュされたデータは mysql でも利用できる必要があります) すべてのデータを redis にキャッシュする必要はありません。

キャッシュからデータを取得する方が速い理由は、ディスク上に保存される mysql データとは異なり、キャッシュされたデータはメモリ内に存在するためです。ディスクからメモリのこのプロセスにデータをロードする必要があり (このプロセスは非常に時間がかかり、非効率的です)、メモリから直接データを取得します。

Redis キャッシュがクラッシュすると、大量のリクエストがデータベースにアクセスすることはありませんか?データベースは存続できるでしょうか?

それを受け入れて分析してください。何千億ものリクエストが同時にアクセスされた場合、データベースはなぜそれを処理できないのでしょうか?

①データベースは大量の同時実行を処理できません。

例を見れば分かります。

1 億の plsql クライアントが、データベースのクエリ、書き込み、その他の操作のために同時に Oracle にアクセスすると、データベースにとっては間違いなく圧倒されます。

この観点から見ると、redis はあまり役に立ちません。

②データベースは低速なデバイス上に存在しており、データベースにアクセスするたびにディスクからメモリへの転送処理であるioが必要となります。これが、redis などのキャッシュ メカニズムを使用する理由です。

Redis 関連の技術記事の詳細については、Redis 入門チュートリアル 列にアクセスして学習してください。

以上がどのデータを Redis に配置し、どのデータをデータベースに配置する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。