0
私がPUBLISH
の場合、1人のサブスクライバを持っているがそのサブスクライバがメッセージを受信するのにかかるレディスのメッセージは、PUBLISH
を1秒間ブロックするか、Redis:PUBLISHは非同期ですか?
もしもそれらが独立して動作するなら、悪いものが起こる前にどれくらい多くのコマンドが待ち行列に入るでしょうか?
私がPUBLISH
の場合、1人のサブスクライバを持っているがそのサブスクライバがメッセージを受信するのにかかるレディスのメッセージは、PUBLISH
を1秒間ブロックするか、Redis:PUBLISHは非同期ですか?
もしもそれらが独立して動作するなら、悪いものが起こる前にどれくらい多くのコマンドが待ち行列に入るでしょうか?
PUBLISH
は同期です - pubsub.c関数とpubsubPublishMessage
にもこのコマンドのソースがあります。 Redisはシングルスレッドアプリケーションです。だから、厳密には、彼のコマンドはすべて同期的です。
私はそれが本当だとは思わない。私は、RedisがノンブロッキングIOを使用していて、遅いコンシューマごとにブロックするのではなく、クライアントにパブリケーションをエンキューすることを確信しています。 –