1

これは実行可能ですか、それとも CPU のパフォーマンスが低下しますか?

私がこれをしたい理由は、プレシャーディングです。多く (128、または 256) の Redis インスタンスにまたがってデータを分割し、それらすべてを同じサーバーで実行したいと考えています。その後、スケールアウトする必要がある場合は、より多くのサーバーを起動して、インスタンスを他のサーバーに簡単に移動できます。

Redis 自体のメモリ フットプリントが小さいことはわかっているため、メモリ オーバーヘッドはおそらく問題にならないでしょう。しかし、コアが 4 つしかない場合、何百もの Redis インスタンスを処理できますか? または、コアごとに最大 1 つのインスタンスを維持する必要がありますか?

4

1 に答える 1

0

Redis はシングルスレッドアプリケーションのように動作し、I/O などのために追加のスレッドをフォークします。したがって、 1 つの redisインスタンスごとに 1 つのコアで問題なく動作すると言えます。コア間でマルチコアコンピューターのリソースを共有しているため。したがって、ほとんど同じパフォーマンスを達成することはできませんが、ここでは問題は見られません。

ハードドライブへの永続性を許可するために「耐久性」をオンにすると、問題が発生する可能性があります。redis 自体が永続性を提供するために新しいフォークされたスレッドを使用したとしても、ロードされたシステムのパフォーマンスが大きく損なわれるとは思いません。

すでに述べたように、永続性がなくてもかなりうまく機能する可能性があります。

于 2013-08-22T10:29:57.520 に答える