rabbitMQ简单实现持久化的生产者消费者

rabbitMQ简单实现持久化的生产者消费者

## 简单实现rabbitMQ简单实现持久化的生产者消费者
前提需要先安装rabbitMq并启动在这里插入代码片

生产者代码

```python
import pika
# 简单的向队列中加入消息
# 创建连接对象
connection = pika.BlockingConnection(
    pika.ConnectionParameters(host='localhost'))
# 创建频道对象
channel = connection.channel()
# 指定一个队列,如果该队列不存在则创建
channel.queue_declare(queue='test_queue', durable=True)  # durable=True持久化
# 提交消息
for i in range(10):
    channel.basic_publish(exchange='',
                          routing_key='test_queue',
                          body='hello,world' + str(i),
                          properties=pika.BasicProperties(
                              delivery_mode=2, ))  # 使得消息持久化
    print("sent...")
# 关闭连接
connection.close()

消费者代码

import pika
credentials = pika.PlainCredentials('guest', 'guest')
# 连接到RabbitMQ服务器
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost', 5672, '/', credentials))
channel = connection.channel()
# 指定一个队列,如果该队列不存在则创建
channel.queue_declare(queue='test_queue',durable=True) # 与发送的队列属性保持一致
# 定义一个回调函数
def callback(ch, method, properties, body):
    print(body.decode('utf-8'))
# 告诉RabbitMQ使用callback来接收信息 queue='hello', on_message_callback=callback, auto_ack=True
channel.basic_consume(queue='test_queue',on_message_callback=callback,auto_ack=False)
print('waiting...')
# 开始接收信息,并进入阻塞状态,队列里有信息才会调用callback进行处理。按ctrl+c退出。
channel.start_consuming()


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值