python rabbitmq 队列持久化

来源:转载


发送端:

importpika

connection=pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel=connection.channel()
channel.queue_declare(queue='hello',durable=True)##队列持久化,队列重启后也存在,不保证数据是否存在
#channel.queue_delete(queue="task_queue")
#foriinrange(100):
channel.basic_publish(exchange='',
routing_key='hello',
body="helloworld",
properties=pika.BasicProperties(delivery_mode=2)##数据持久化
)
#print("Sent'helloworld!'")
connection.close()

接收端:

importpika
importtime
connection=pika.BlockingConnection(pika.ConnectionParameters(host='localhost'))
channel=connection.channel()

channel.queue_declare(queue='hello',durable=True)
#channel.queue_bind(queue='hello',exchange='',routing_key='hello')
defcallback(ch,method,properties,body):
print("aaa")
#time.sleep(8)
print("[x]Received%r"%body)
ch.basic_ack(delivery_tag=method.delivery_tag)#给rabbitmq返回已拿到数据信号。
channel.basic_consume(callback,
queue='hello',
no_ack=False)

print('[*]Waitingformessages.ToexitpressCTRL+C')
channel.start_consuming()

分享给朋友:
您可能感兴趣的文章:
随机阅读: