redis发布订阅
redis发布订阅:
先创建订阅频道名为Redischat ,然后重新开启一个redis客户端,在同一个频道Redischat发布两次消息,订阅者就能收到消息。
实例:
订阅者的客户端会显示如下消息:
127.0.0.1:6379> subscribe redischat
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "redischat"
3) (integer) 1
1) "message"
2) "redischat"
3) "redis is a great caching technique"
1) "message"
2) "redischat"
3) "Learn redis by runoob.com"
redis发布订阅命令:
1、psubscribe pattern [pattern ...]
Psubscribe 命令订阅一个或多个符合给定模式的频道。
每个模式以*作为匹配符,比如it*匹配所有以it开头的频道(it.news、it.blog、it.tweets等等)。news.*匹配所有以news.开头的频道(news.it、news.global.today等等),诸如此类。
基本语法:Psubscribe pattern [pattern ...]
返回值:接收到的信息。
实例:
1 127.0.0.1:6379> psubscribe shidong #订阅频道 ,等待接收消息 2 Reading messages... (press Ctrl-C to quit) 3 1) "psubscribe" 4 2) "shidong" 5 3) (integer) 1 6
Pubsub命令
该命令用于查看订阅与发布系统状态,它由数个不同格式的子命令组成。
基本语法:pubsub <subcommand> [argument [argument ...]]
返回值:由活跃频道组成的列表。
实例:
1 redis 127.0.0.1:6379> PUBSUB CHANNELS 2 (empty list or set)
Publish 命令
publish命令用于将信息发送到指定的频道。
基本语法:publish channel message
返回值:接收到信息的订阅者数量。
实例:
1 终端一: 2 127.0.0.1:6379> psubscribe redis 3 Reading messages... (press Ctrl-C to quit) 4 1) "psubscribe" 5 2) "redis" 6 3) (integer) 1 7 8 终端二: 9 127.0.0.1:6379> publish redis "hello world" 10 (integer) 1
Punsubscribe命令
该命令用于退订所有给定模式的频道。
基本语法:punsubscribe [pattern [pattern ...]]
返回值:这个命令在不同的客户端中有不同的表现。
实例:
1 127.0.0.1:6379> punsubscribe redis 2 1) "punsubscribe" 3 2) "redis" 4 3) (integer) 0
subscribe channel 【channel...】
该命令用于订阅给定的一个或多个频道的信息。
基本语法:subscribe channel [channel...]
返回值:接收到的信息。
实例:
1 127.0.0.1:6379> subscribe mychannel 2 Reading messages... (press Ctrl-C to quit) 3 1) "subscribe" 4 2) "mychannel" 5 3) (integer) 1
unsubscribe [channel [channel ...]]
该命令用于退订给定的一个或多个频道的信息。
基本语法:unsubscribe channel [channel ...]
实例:
1 127.0.0.1:6379> unsubscribe mychannel 2 1) "unsubscribe" 3 2) "mychannel" 4 3) (integer) 0