Redis-pub-sub

提供:Dev Guides
移動先:案内検索

Redis-発行購読

Redis Pub/Subは、送信者(パブリッシャーと呼ばれるredisの用語)がメッセージを送信し、受信者(サブスクライバー)がメッセージを受信するメッセージングシステムを実装します。 メッセージが転送されるリンクは channel と呼ばれます。

Redisでは、クライアントは任意の数のチャンネルをサブスクライブできます。

次の例は、サブスクライバーの公開の概念の仕組みを説明しています。 次の例では、1人のクライアントが「redisChat」という名前のチャンネルを購読しています。

redis 127.0.0.1:6379> SUBSCRIBE redisChat
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "redisChat"
3) (integer) 1

現在、2つのクライアントが「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 tutorials point"
(integer) 1
1) "message"
2) "redisChat"
3) "Redis is a great caching technique"
1) "message"
2) "redisChat"
3) "Learn redis by tutorials point"

Redis PubSubコマンド

次の表に、Redis Pub/Subに関連するいくつかの基本的なコマンドを示します。

Sr.No Command & Description
1

PSUBSCRIBE pattern [pattern …​]

指定されたパターンに一致するチャンネルにサブスクライブします。

2

PUBSUB subcommand [argument [argument …​]]

Pub/Subシステムの状態を通知します。 たとえば、サーバーでアクティブになっているクライアント。

3

PUBLISH channel message

チャンネルにメッセージを投稿します。

4

PUNSUBSCRIBE [pattern [pattern …​]]

指定されたパターンに一致するチャネルに投稿されたメッセージのリッスンを停止します。

5

SUBSCRIBE channel [channel …​]

指定されたチャネルに発行されたメッセージをリッスンします。

6

UNSUBSCRIBE [channel [channel …​]]

指定されたチャネルに投稿されたメッセージの受信を停止します。