五、redis消息通知

1. 任务队列

brpop

brpop和rpop区别,brpop如果没有元素则阻塞等待直到加入新元素。
语法:
brpop key1 key2 … seconds
seconds指定阻塞时间,0无穷大
生产者通过lpush加入元素,消费者通过brpop弹出元素,即可实现任务队列。

2. 优先级队列

优先发送重要的消息。
当brpop监控多个key,在所有key无元素阻塞且都有元素的情况下,该命令会按照从左到右的顺序进行消费。所谓的优先级队列借助此特点完成。
范列:
brpop key1 key2 0
重要的通知加入key1即可,普通则加入key2。

3. 发布/订阅

publish

语法:
publish key message
key为频道键名,message为要发送消息。返回值为成功收到该消息的订阅者数量。

subscribe

语法:
subscribe key1 key2 …
示例:
127.0.0.1:6379> subscribe 1
Reading messages… (press Ctrl-C to quit)
1) “subscribe”
2) “1”
3) (integer) 1
如上获得三个返回值,1)表示类型2)3)根据1)类型值的不同而不同,具体如下:
订阅后客户端可能收到三种类型的消息:
a.
subscribe类型,第二个值表示订阅成功的频道名称,第三个值表示当前客户端所订阅的频道总数。
b.
message类型,第二个值生产消息的频道名称,第三个值为消息内容。
c.
unsbscribe,取消订阅。第二个值所取消的频道名称,第三个值当前客户端所订阅的频道总数,第三个值为0则退出订阅状态。

unsbscribe

语法:
unsbscribe key1 key2 …

4. 通配符与订阅

符号含义
匹配一个字符
*匹配任意个字符
[]范围匹配,[ab]匹配a 或b,[a-c]匹配a到c之间任何字母
\x匹配字符x,如需要匹配?则需转义,\?
psubscribe

范列:
psubscribe channel*
该命令将订阅所有以channel开头的频道。
注意:
psubscribe 可重复订阅频道,客户端也会收到重复消息。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值