rabbitmq的笔记(三)用Python生产和消费

消费者:
#!/usr/local/bin/python2.7
# -*- coding: utf-8 -*-
import pika
 
connection = pika.BlockingConnection(pika.ConnectionParameters('172.16.148.79', 5672, '/'))
channel = connection.channel()
 
def callback(channel, method, properties, message):
print("get resultc from queue %s" % message)
 
channel.basic_consume('rhj',
callback,)
 
channel.start_consuming()
 
生产者:
#!/usr/local/bin/python2.7
# -*- coding: utf-8 -*-
import pika
 
connection = pika.BlockingConnection(pika.ConnectionParameters('172.16.148.78', 5672,'/'))
channel = connection.channel()
 
channel.queue_declare(queue='rhj')
 
channel.basic_publish(exchange='',
routing_key='rhj',
body='rabbitmq003')
connection.close()
先执行消费者,会一直监听队列。等执行生产者,消息马上被消费,显示在消费者那里。
这样的程序适合在新安装的rabbitmq和各种迁移升级里面把读写过程展示出来,可以体现在变更的过程中有没有消息丢失了。
如果遇到集群,要填写所有节点的读写,这一在参数的一栏这样填写。
集群的写法:
Parameters = (
pika.ConnectionParameters('39.104.65.201', 5672,'/',credentials = credentials,connection_attempts=5, retry_delay=1),
pika.ConnectionParameters('39.99.35.129', 5672,'/',credentials = credentials,connection_attempts=5, retry_delay=1),
pika.ConnectionParameters('39.104.24.129', 5672,'/',credentials = credentials,connection_attempts=5, retry_delay=1))
connection = pika.BlockingConnection(Parameters)

posted @   一夕如环  阅读(224)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示