python采用pika库使用rabbitmq(五)消息持久化存储(Message durability)
虽然有了消息反馈机制,但是如果rabbitmq自身挂掉的话,那么任务还是会丢失。所以需要将任务持久化存储起来。声明持久化存储:
队列持久化
1 channel.queue_declare(queue='task_queue', durable=True)
在发送任务的时候,用delivery_mode=2来标记消息为持久化存储:
1 channel.basic_publish(exchange='', 2 routing_key='task_queue', 3 body=message, 4 properties=pika.BasicProperties( 5 delivery_mode=2, # make message persistent 6 )