学习笔记 : Redis中基于Stream结构的消息队列
import redis
# 连接到Redis服务器
r = redis.Redis(host='localhost', port=6379, db=0)
# 使用XADD添加消息到流中
stream_key = 'mystream'
message_id = r.xadd(stream_key, {'message': 'Hello, Redis Streams!'})
print(f"添加的消息ID: {message_id}")
# 使用XREAD读取流中的消息
consumer_group_name = 'mygroup'
messages = r.xread({stream_key: 0}, count=1, block=0)
for stream_message in messages:
stream_key, messages_in_stream = stream_message
for message_id, message in messages_in_stream:
print(f"消息ID: {message_id}, 内容: {message}")
# 使用XACK确认消息已被消费
message_id_to_ack = message_id # 假设我们要确认的是上面添加的消息
r.xack(stream_key, consumer_group_name, message_id_to_ack)
# 使用XDEL删除流中的消息
message_id_to_delete = message_id # 假设我们要删除的是上面添加的消息
r.xdel(stream_key, message_id_to_delete)
这段代码展示了如何使用Python的redis
模块与Redis服务器交互,执行基本的Stream数据结构操作。代码中包含了添加消息到流、读取消息、确认消息已消费以及删除消息的例子。
评论已关闭