6

マルチスレッド化されるキューサービスを構築しています。私たちのデータ バックエンドである Redis に、リストまたはセット タイプのスレッド セーフな pop 関数があることを確認する必要があります。アイデアは、任意の数のスレッドが Redis を呼び出すことができ、衝突が発生しないということですlpopspopこれをテストする方法がよくわかりません。ポップ関数がスレッドセーフである場合、Redis ページのどこにも明示的に記載されていません。

4

1 に答える 1

17

ベンチマークページより

Redis はシングルスレッド サーバーです。複数の CPU コアを活用するようには設計されていません。必要に応じて複数のコアでスケールアウトするために、複数の Redis インスタンスを起動する必要があります。1 つの Redis インスタンスをマルチスレッド データ ストアと比較するのは公平ではありません。

したがって、すべてのコマンドが単一のスレッドでキューに入れられるので、2 つのコマンドが並行して実行されることはないので問題ありません。

于 2012-07-25T20:57:30.460 に答える