最近 redis を使っていて、とても便利だと感じているのですが、インメモリ データベースを選択する際に、どのような場合に redis を選択し、どのような場合に memcache を選択すればよいのか迷っています。そこで、redis の作者 (stackoverflow 上) が提供している次の関連情報を見つけました。 パフォーマンスについてはあまり気にする必要はありません。Redis は小さな値ではコアごとに高速ですが、memcached はクライアントの助けを借りずに単一の実行ファイルと TCP ポートで複数のコアを使用できます。また、100k オーダーの大きな値では memcached の方が高速です。Redis は最近大きな値に関して大幅に改善されましたが (不安定なブランチ)、このユース ケースでは依然として memcached の方が高速です。ここでのポイントは、どちらも、提供できる 1 秒あたりのクエリのボトルネックにはならない可能性が高いということです。 メモリ使用量に注意する必要があります。単純なキーと値のペアの場合、memcached の方がメモリ効率が高くなります。Redis ハッシュを使用する場合、Redis の方がメモリ効率が高くなります。使用例によって異なります。 永続性とレプリケーションは、Redis でのみ利用可能な 2 つの機能です。キャッシュを構築することが目的の場合でも、アップグレードや再起動後もデータが残っていると便利です。 必要な操作の種類に注意する必要があります。Redis には複雑な操作が多数あり、キャッシュの使用例だけを考慮しても、多くの場合、クライアント側でデータを処理する必要なく (大量の I/O が必要になる場合があります)、1 回の操作でより多くの操作を実行できます。これらの操作は、多くの場合、単純な GET および SET と同じくらい高速です。そのため、GET/SET だけでなく、より複雑な操作が必要な場合、Redis が非常に役立ちます (タイムライン キャッシュを考えてみてください)。 あるネットユーザーは次のように翻訳した[1]。 パフォーマンスにあまり重点を置く必要はありません。 Redis は 1 つのコアのみを使用しますが、Memcached は複数のコアを使用できるため、各コアに小さなデータを保存する場合、平均して Redis の方が Memcached よりもパフォーマンスが高くなります。 100k を超えるデータの場合、Memcached は Redis よりもパフォーマンスが優れています。Redis は最近、ビッグデータの保存用に最適化されましたが、それでも Memcached よりわずかに劣ります。とはいえ、結論としては、どちらを使用しても、1 秒あたりのリクエスト数はボトルネックにならないということです。 メモリ使用量に注意する必要があります。キー値などの単純なデータストレージの場合、memcache の方がメモリ使用率が高くなります。ハッシュ構造を使用すると、Redis のメモリ使用量が高くなります。もちろん、これらすべては特定のアプリケーション シナリオによって異なります。 データの永続性とマスタースレーブレプリケーションに注意を払う必要がある場合、これらの 2 つの機能を備えているのは 必要な操作に注意する必要があります。 Redis は多くの複雑な操作をサポートしており、メモリ使用量だけを考慮しても、データをクライアントに読み込むことなく (多くの IO 操作が必要)、1 回の操作で多くの操作を実行できる場合がよくあります。これらの複雑な操作は基本的に純粋な GET および POST 操作と同じくらい高速なので、GET/SET 以外の操作が必要な場合には Redis が大きな役割を果たします。 2 つのどちらを選択するかは、特定のアプリケーション シナリオによって異なります。キャッシュするデータがキーと値のような単純な構造である場合、私のプロジェクトでは、安定性と信頼性が十分にある memcache を使用しています。保存やソートなどの一連の複雑な操作が含まれる場合、Redis が最適な選択であることに疑いの余地はありません。 Redis と memcache の違いについては、記録のために関連するいくつかの記述を次に示します。 redisとmemecacheの違いは次のとおりです[2]。 1. 保管方法: まとめると、永続性要件やデータ構造と処理の高度な要件があるアプリケーションの場合は Redis を選択し、その他の単純なキー/値ストレージの場合は memcache を選択してください。 RedisとMemcacheの比較と選び方に関するこの記事はこれで終わりです。RedisとMemcacheのより関連性の高い比較コンテンツについては、123WORDPRESS.COMの過去の記事を検索するか、以下の関連記事を引き続き閲覧してください。今後とも123WORDPRESS.COMをよろしくお願いいたします。 |
<<: JavaScript ファイルの読み込みとブロックの問題: パフォーマンス最適化のケーススタディ
目次序文1. 404 ページ1. 原因2. 解決策2.白い画面を更新する1. 原因2. 解決策3. ...
mysqladmin ツールの使用形式は次のとおりです。 mysqladmin [オプション] コ...
あいまいクエリにOracleデータベースを使用する場合、コンソール エラーは次の図に表示されます。理...
この記事の本文を始める前に、まず ffmpeg プログラムをインストールする必要があります (Lin...
1. CentOS Linuxにffmpegをインストールする1.ダウンロードして解凍する http...
Docker の使用中に、いくつかの問題が発見されました。npm install や bundle ...
HTML ハイパーテキスト ドキュメントの基本構造は、ドキュメント ヘッダーとドキュメント本体の 2...
テーブルを切り捨てる個々の行の削除をログに記録せずに、テーブル内のすべての行を削除します。文法 テー...
1. Baidu Eslint Ruleプラグインをインストールする npm i -D eslint...
序文1. この記事ではMySQL 8.0バージョンを使用していますバージョン5.0と比較すると、パッ...
導入この章では、主に Linux で FTP サーバーを構築するプロセスを紹介します。習得すべき重要...
目次1. カスタム指示とは何ですか? 2. 指示をカスタマイズする方法フック機能3. 応用シナリオ入...
目次1. ダウンロード2. 展開1.Nginxのデプロイメント2. ModSecurityの展開3....
nginx (エンジン x) は、高性能な HTTP およびリバース プロキシ サーバー、メール プ...
序文データベースでは、一部のデータ テーブルとデータは latin1 であり、一部のデータ テーブル...