redis的发布/订阅(pub/sub)

         发布订阅(pub/sub)是一种消息通信模式,主要的目的是解耦消息发布者和消息订阅者之间的耦合。

         Redis作为一个pub/sub server,在订阅者和发布者之间起到了消息路由的功能。

         订阅者可以通过subscribe和psubscribe命令向redis server订阅自己感兴趣的消息类型,redis将消息类型称为通道(channel)。

         当发布者通过publish命令向redis server发送特定类型的消息时,订阅该消息类型的全部client都会收到此消息,这里消息的传递是多对多的,一个client可以订阅多个 channel,也可以向多个channel发送消息。

1.订阅和发布:

为了订阅foo和bar,一个客户端发出一个订阅的频道名称操作:

    SUBSCRIBE foo bar

此时,从另一个客户端我们发出关于频道名称为second的发布操作:

    PUBLISH foo  Hello

这时第一个客户端就会收到它订阅的频道的消息:

1) "message"

2) "foo"

3) "haha Hello"

2.模式匹配订阅

订阅操作也可以通过模式匹配来进行:

PSUBSCRIBE  foo news.*

(表示订阅所有news.开头的频道,例如:news.art.figurative, news.music.jazz)

3. 取消订阅

UNSUBSCRIBE和PUNSUBSCRIBE(模式匹配)

猜你喜欢

转载自guwq2014.iteye.com/blog/2390410