来源广告邮件
For development or small hobby projects. Not recommended for production due to variable performance.---意思是测试用,不能用于生产
注册走起
https://www.cloudamqp.com/
注册成功
选 tw
服务详情
免费的嘛,有限制
- Max 100 queues
- Max 10 000 queued messages
- Max idle queue time 28 days
- Max 20 connections
- Max queue length 10000
- Messages 1000000
rabbitmq 管理平台
测试
安装: pip install pika
交换机,队列设置
生产者
面板信息
消息详情
消费者
面板信息
参考资料:
https://www.cnblogs.com/pangguoping/p/5720134.html
https://www.cloudamqp.com/docs/index.html
代码
# -*- coding:utf-8 -*-
import pika
import sys
username = 'sigmsgvl' #指定远程rabbitmq的用户名密码
pwd = '9mLB9oxmSJFo07K2vvC-qDnohDKek5fN'
user_pwd = pika.PlainCredentials(username, pwd)
s_conn = pika.BlockingConnection(pika.ConnectionParameters('mustang.rmq.cloudamqp.com',5672,'sigmsgvl', credentials=user_pwd))#创建连接
chan = s_conn.channel() #在连接上创建一个频道
chan.queue_declare(queue='test',durable=True) #声明一个队列,生产者和消费者都要声明一个相同的队列,用来防止万一某一方挂了,另一方能正常运行
chan.basic_publish(exchange='gd', #交换机
routing_key='hacpai',#路由键,写明将消息发往哪个队列,本例是将消息发往队列hello
body='hello hacpai')#生产者要发送的消息
print("[生产者] send 'hello hacpai")
s_conn.close()#当生产者发送完消息后,可选择关闭连接
# -*- coding:utf-8 -*-
import pika
import sys
username = 'sigmsgvl' #指定远程rabbitmq的用户名密码
pwd = '9mLB9oxmSJFo07K2vvC-qDnohDKek5fN'
user_pwd = pika.PlainCredentials(username, pwd)
connection = pika.BlockingConnection(pika.ConnectionParameters('mustang.rmq.cloudamqp.com',5672,'sigmsgvl', credentials=user_pwd))#创建连接
channel = connection.channel() #在连接上创建一个频道
channel.queue_declare(queue='test',durable=True) # 声明消息队列,消息将在这个队列中进行传递。如果队列不存在,则创建
# 定义一个回调函数来处理,这边的回调函数就是将信息打印出来。
def callback(ch, method, properties, body):
print(" [x] Received %r" % body)
# 告诉rabbitmq使用callback来接收信息
channel.basic_consume(callback,
queue='test',
no_ack=True)
# no_ack=True表示在回调函数中不需要发送确认标识
print(' [*] Waiting for messages. To exit press CTRL+C')
# 开始接收信息,并进入阻塞状态,队列里有信息才会调用callback进行处理。按ctrl+c退出。
channel.start_consuming()
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于