【中间件篇-Redis缓存数据库03】Redis高级特性和应用(发布 订阅、Stream)
warning:
这篇文章距离上次修改已过248天,其中的内容可能已经有所变动。
import redis
# 连接Redis
r = redis.Redis(host='localhost', port=6379, db=0)
# 发布订阅
pubsub = r.pubsub()
pubsub.subscribe('channel-1')
print("Subscribed to channel-1")
r.publish('channel-1', 'Hello World!')
print(pubsub.get_message())
# Streams
stream_key = 'stream-key'
r.xadd(stream_key, {'field1': 'value1', 'field2': 'value2'})
r.xadd(stream_key, {'field3': 'value3', 'field4': 'value4'})
# 使用消费组读取stream
group_name = 'my-group'
consumer_name = 'my-consumer'
r.xgroup_create(stream_key, group_name, id='0')
messages = r.xreadgroup(group_name, consumer_name, {stream_key: '0'})
for message in messages:
print(message[1][0][1]) # 打印消息内容
这段代码演示了如何在Python中使用redis-py库进行Redis的发布订阅操作和Stream数据类型的使用。首先,我们创建一个Redis连接,然后订阅一个频道,并发送一条消息。接着,我们往一个stream中添加两条记录,并使用消费组来读取这些记录。
评论已关闭