标签:hide 消费 订阅 fanout block close logs blocking declare
fanout: 广播 , exclusire=True 随机唯一的
广播模式:实时的
import pika import sys credentials = pika.PlainCredentials(‘alex‘, ‘alex123‘) connection = pika.BlockingConnection(pika.ConnectionParameters( ‘192.168.14.52‘,credentials=credentials)) channel = connection.channel() channel.exchange_declare(exchange=‘logs‘,type=‘fanout‘) message = ‘ ‘.join(sys.argv[1:]) or "info: Hello World!" channel.basic_publish(exchange=‘logs‘, routing_key=‘‘, body=message) print(" [x] Sent %r" % message) connection.close()
import pika credentials = pika.PlainCredentials(‘alex‘, ‘alex123‘) connection = pika.BlockingConnection(pika.ConnectionParameters( ‘192.168.14.52‘,credentials=credentials)) channel = connection.channel() channel.exchange_declare(exchange=‘logs‘, type=‘fanout‘) result = channel.queue_declare(exclusive=True) # 不指定queue名字,rabbit会随机分配一个名字,exclusive=True会在使用此queue的消费者断开后,自动将queue删除 queue_name = result.method.queue channel.queue_bind(exchange=‘logs‘, queue=queue_name) print(‘ [*] Waiting for logs. To exit press CTRL+C‘) def callback(ch, method, properties, body): print(" [x] %r" % body) channel.basic_consume(callback, queue=queue_name,no_ack=True) channel.start_consuming()
标签:hide 消费 订阅 fanout block close logs blocking declare
原文地址:https://www.cnblogs.com/jintian/p/11370915.html