python中消费rabbitmq中消息举例
时间: 2024-09-14 19:16:17 浏览: 43
Python实现RabbitMQ6种消息模型的示例代码
在Python中消费RabbitMQ中的消息通常需要使用`pika`这个库,它是RabbitMQ官方推荐的一个客户端。以下是一个简单的例子,展示了如何使用`pika`连接到RabbitMQ服务器,并设置消费者来接收消息。
首先,确保你已经安装了`pika`库,如果没有安装,可以使用pip进行安装:
```bash
pip install pika
```
然后,你可以使用以下代码来设置RabbitMQ的连接和消费逻辑:
```python
import pika
# 连接到RabbitMQ服务器
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()
# 声明(如果需要)队列
channel.queue_declare(queue='hello')
# 定义回调函数来处理接收到的消息
def callback(ch, method, properties, body):
print(f"Received message: {body}")
# 设置消费者
channel.basic_consume(
queue='hello', # 指定队列名称
on_message_callback=callback, # 指定回调函数
auto_ack=True # 自动确认消息
)
# 开始消费消息
print("Waiting for messages. To exit press CTRL+C")
channel.start_consuming()
```
在这个例子中,我们首先创建了一个与RabbitMQ服务器的连接,然后声明了一个队列(如果队列不存在的话)。之后定义了一个回调函数`callback`,这个函数将在接收到消息时被调用。然后我们通过`basic_consume`方法设置消费者,并指定了回调函数和队列名称。最后,调用`start_consuming`方法开始接收和处理消息。
请注意,这段代码是在假设你已经有一个运行中的RabbitMQ服务器,并且服务器上有一个名为`hello`的队列。如果你需要连接到不同的RabbitMQ服务器或者队列名称不同,你需要相应地修改`ConnectionParameters`和`queue_declare`中的参数。
阅读全文