3

2つの別々のクライアントが同じチャネルでPUBLISHを実行する場合、サブスクライバーに通知される順序が尊重されると想定できますか?

  • すべてのサブスクライバーは、最初のPUBLISHメッセージを受信します
  • 次に、すべての日記者は2番目を受け取りますか?

redisはシングルスレッドであるため、そうする必要がありますが、両方のPUBLISHを並行して処理しないようにしたいと思います。

4

1 に答える 1

4

はい、PUBLISH同期コマンドです。メッセージをすべてのサブスクライバーにプッシュするまで戻りません。また、さまざまなPUBLISHコマンドがRedisリクエストキューで自然にシリアル化されます。

時間計算量:O(N + M)ここで、Nは受信チャネルにサブスクライブされたクライアントの数であり、Mは(任意のクライアントによって)サブスクライブされたパターンの総数です。

于 2012-10-19T07:48:58.153 に答える