【RabbitMQ】3、hello world(简单模式)
- 在本教程的这一部分中,我们将用 Java 编写两个程序。发送单个消息的生产者和接收消息并打印出来的消费者。我们将介绍 Java API 中的一些细节。
- 在下图中,“ P”是我们的生产者,“ C”是我们的消费者。中间的框是一个队列-RabbitMQ 代表使用者保留的消息缓冲区

- 生产者代码:
import pika
# mq的用户名和密码,用于认证
credentials = pika.PlainCredentials(username='root', password='root')
# 1、连接rabbitmq
connection = pika.BlockingConnection(pika.ConnectionParameters(
host='47.94.132.145',
virtual_host='/',
port=5672,
credentials=credentials
))
channel = connection.channel() # 创建一个AMQP信道
# 2、创建队列
channel.queue_declare(queue='hello') # 声明队列
# 3、向指定队列插入数据
channel.basic_publish(
exchange='', # 简单模式,交换器为空。交换器可以精确的指定消息应该发到哪个队列中
routing_key='hello', # 指定队列
body=b"Hello World" # 发送的内容
)
print("[x] send 'Hello World'")
connection.close()
- 消费者代码:
# -*- coding: utf-8 -*-
import pika
credentials = pika.PlainCredentials(username='root', password='root')
connection = pika.BlockingConnection(pika.ConnectionParameters(
host='47.94.132.145',
virtual_host='/',
port=5672,
credentials=credentials
))
channel = connection.channel() # 创建一个AMQP信道
# 创建队列
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 message. to exit press CTRL+C")
# 正式监听
channel.start_consuming() # 开始接收信息,并进入阻塞状态,队列里有信息就会调用callback进行处理
本文来自博客园,作者:郭祺迦,转载请注明原文链接:https://www.cnblogs.com/guojie-guojie/p/16404433.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?