Reids流Stream

2023-10-29  本文已影响0人  风雪_夜归人

Redis发布订阅

简介

进程间的一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接受消息

redis pub/sub命令

1.消息的发布与订阅
subscribe channel 订阅频道,会持续接收消息
publish channel message 在某个频道发布消息,相应的订阅者会收到消息


image.png
image.png image.png

Stream

Stream是Redis5.0引入的一种新数据类型,允许消费者等待生产者发送的新数据,还引入了消费者组的概念,组之间数据是相同的(前提是设置的偏移量一样),组内的消费者不会拿到相同数据。这种概念与kafaka很相似。

原理:

与redis的pub/sub不同,pub/sub多个客户端是收到相同的数据,而stream的多个客户端是竞争关系,每个客户端收到的数据是不相同的。

Stream

生成消息的命令

1.xadd 生成消息,返回消息id(时间戳+顺序),顺序指该毫秒下产生的第几条消息
2.xlen 查看消息的长度
3.xrange machao - + 遍历Stream中所有消息
4.xdel machao 消息id 通过id删除消息


image.png

读取消息的命令

1.xread 读取消息,返回消息列表
参数 xread streams machao 0-0 遍历所有消息
支持参数count num,指定返回消息的数量
支持参数block num,可以阻塞等待消息返回,0-0应该替换为$,代表从尾部接收消息


image.png
image.png
上一篇 下一篇

猜你喜欢

热点阅读