| 1234567891011121314151617181920212223242526272829 |
- #消费者
- import pika
- user_info = pika.PlainCredentials('user', 'Un2yzriWm7veSDoh')
- connection = pika.BlockingConnection(pika.ConnectionParameters('rabbitmq.rabbitmq.svc.cluster.local', 5672, '/', user_info))
- channel = connection.channel()
- channel.exchange_declare(exchange='交换机', exchange_type='fanout')
- # 使用RabbitMQ给自己生成一个专有的queue
- result = channel.queue_declare(queue='333')
- # result = channel.queue_declare(queue='', exclusive=True)
- queue_name = result.method.queue
- # 这里如果设置exclusive=True参数,那么该队列就是一个只有队列,在消费者结束后,该专有队列也会自动清除,如果queue=''没有设置名字的话,那么就会自动生成一个
- # 不会重复的队列名
- # 将queue绑定到指定交换机
- channel.queue_bind(exchange='交换机', queue=queue_name)
- print(' [*] Waiting for message.')
- def callback(ch, method, properties, body):
- print("消费者收到:{}".format(body.decode('utf-8')))
- channel.basic_consume(queue=queue_name, on_message_callback=callback, auto_ack=True)
- channel.start_consuming()
|