Redisのパブリッシュおよびサブスクライブ
Redisのは、パブリッシュ・サブスクライブ(パブリッシュ/サブスクライブ)メッセージングモードです:送信者(パブ)がメッセージを受信するメッセージ、加入者(サブ)を送信します。
Redisのクライアントは、任意の数のチャンネルを購読することができます。
以下の図は、チャネルチャネル1を示しており、チャネル3つのクライアントにサブスクライブ - 関係のクライアント2、client5とクライアント1間:
新しいメッセージがコマンドを発行するチャネル1によってチャネルに送信されると、このメッセージは、その3つのクライアントに加入するために送信されます。
例
次の例では、これがパブリッシュおよびサブスクライブどのように機能するかを示しています。 私たちの例では、サブスクリプション・チャネルと呼ばredisChatを作成しました:
redis 127.0.0.1:6379> SUBSCRIBE redisChat Reading messages... (press Ctrl-C to quit) 1) "subscribe" 2) "redisChat" 3) (integer) 1
それでは、再オープンRedisのクライアントせ、その後、同じチャネルで二回redisChatメッセージを公開し、加入者は、メッセージを受け取ることができるようになります。
redis 127.0.0.1:6379> PUBLISH redisChat "Redis is a great caching technique" (integer) 1 redis 127.0.0.1:6379> PUBLISH redisChat "Learn redis by w3big.com" (integer) 1 # 订阅者的客户端会显示如下消息 1) "message" 2) "redisChat" 3) "Redis is a great caching technique" 1) "message" 2) "redisChat" 3) "Learn redis by w3big.com"
Redisのコマンドをパブリッシュおよびサブスクライブ
次の表は、Redisのが一般的に使用されるコマンドをサブスクライブパブリッシュ示しています。
いいえ。 | コマンドと説明 |
---|---|
1 | PSUBSCRIBEパターン[パターン...] 1つまたは複数のチャネルの特定のパターンに一致するサブスクライブします。 |
2 | PubSubのサブコマンド[引数[引数...] ] ビューのサブスクリプションとパブリッシングシステムステータス。 |
3 | チャネルメッセージを公開 情報は、指定されたチャネルに送信されます。 |
4 | PUNSUBSCRIBE [パターン[パターン...]] パターン指定されたすべてのチャネルからの退会。 |
5 | SUBSCRIBEチャンネル[チャンネル...] 1つまたは複数のチャネルに与えられた情報を購読します。 |
6 | UNSUBSCRIBE [チャンネル[チャンネル...]] これは、指定されたチャネルからの退会を指します。 |