一直对redis连接数
和redis性能
的关系一知半解,我知道redis是单进程单线程,但是具体就不清楚了.
期间查了一些资料也没有找到想要的答案,希望能给一下详细的解释,或者给个链接也好
天蓬老师2017-04-27 09:04:13
Redis は内部で多重 IO である epoll テクノロジーを使用しています。接続数が非常に多い場合、処理パフォーマンスが向上し、コンテキストの切り替えを避けるために Redis はシングルスレッドになります。
PHP中文网2017-04-27 09:04:13
Redis はシングルスレッドです。複数の CPU / コアを利用するにはどうすればよいですか?
通常、Redis はメモリまたはネットワークに依存しているため、CPU が Redis のボトルネックになる可能性はほとんどありません。たとえば、平均的な Linux システムで実行されている Redis のパイプライン処理を使用すると、1 秒あたり 500,000 のリクエストも配信できるため、アプリケーションが主に O(N) または O(log(N)) コマンドを使用する場合、CPU を過剰に使用することはほとんどありません。
ただし、CPU 使用率を最大化するために、同じボックス内で Redis の複数のインスタンスを起動し、それらを異なるサーバーとして扱うことができます。ある時点で 1 つのボックスでは十分ではない可能性があるため、複数の CPU を使用したい場合は、早めにシャード化する方法を検討し始めることができます。
複数の Redis インスタンスの使用に関する詳細については、パーティショニング ページを参照してください。
よくある質問
某草草2017-04-27 09:04:13
複数の Redis クライアントは、多くの IO オーバーヘッドを引き起こします。各ノード間のデータ交換は、Ehcache ほど複雑ではありません。笑