Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

python rabbitmq

作者:故事没有她   发布日期:2026-01-26   浏览:92

import pika

# 创建连接
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()

# 声明队列
channel.queue_declare(queue='hello')

# 定义回调函数,处理接收到的消息
def callback(ch, method, properties, body):
    print(" [x] Received %r" % body)

# 消费者从队列中获取消息
channel.basic_consume(queue='hello',
                      auto_ack=True,
                      on_message_callback=callback)

print(' [*] Waiting for messages. To exit press CTRL+C')
channel.start_consuming()

解释说明:

  1. 创建连接

    • 使用 pika.BlockingConnection 创建一个到 RabbitMQ 服务器的连接。这里我们连接的是本地的 RabbitMQ 服务器 (localhost)。
  2. 声明队列

    • 使用 channel.queue_declare 方法声明一个名为 hello 的队列。如果该队列已经存在,则不会重复创建。
  3. 定义回调函数

    • callback 函数用于处理接收到的消息。当有消息到达时,RabbitMQ 会调用这个函数,并将消息传递给它。
  4. 消费者从队列中获取消息

    • 使用 channel.basic_consume 方法告诉 RabbitMQ 从 hello 队列中获取消息,并指定使用 callback 函数来处理这些消息。auto_ack=True 表示自动确认消息已被接收。
  5. 等待消息

    • channel.start_consuming 进入一个无限循环,等待消息的到来。直到程序被终止(例如按下 CTRL+C)。

这段代码展示了如何使用 Python 和 Pika 库与 RabbitMQ 进行基本的交互,包括连接、声明队列、定义回调函数以及消费消息。

上一篇:python orm

下一篇:python在线编程器

大家都在看

python时间格式

pythoneval函数用法

python读取文件路径

staticmethod在python中有

python 保存json文件

python开发windows应用程序

python中len是什么意思

python 私有函数

python ord和chr

python中的yield

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站