| 1234567891011121314151617181920212223242526 |
- # -*- coding: utf-8 -*-
- import pika
- import time
- user_info = pika.PlainCredentials('user', 'J70e6K7BRrxrU1dO')
- params = pika.ConnectionParameters('rabbitmq.rabbitmq.svc.cluster.local', 5672, '/', user_info)
- conn = pika.BlockingConnection(params)
- ch = conn.channel()
- # 1. 声明惰性队列
- ch.queue_declare(
- queue='lazy_queue',
- durable=True,
- arguments={'x-queue-mode': 'lazy'} # 这就是全部魔法
- )
- print(' [*] Waiting messages on lazy_queue (Ctrl+C to quit)')
- def callback(ch, method, props, body):
- print(' [x] Received:', body.decode())
- time.sleep(1) # 模拟慢速消费
- ch.basic_ack(method.delivery_tag)
- ch.basic_qos(prefetch_count=10)
- ch.basic_consume(queue='lazy_queue', on_message_callback=callback)
- ch.start_consuming()
|