Come ci si assicura che i messaggi vengano consegnati con Pika? Di default non ti fornirà un errore se il messaggio non è stato consegnato con successo.Come garantire che i messaggi vengano consegnati?
In questo esempio, è possibile inviare diversi messaggi prima che Pika riconosca che la connessione era inattiva.
import pika
connection = pika.BlockingConnection(pika.ConnectionParameters(
host='localhost'))
channel = connection.channel()
channel.queue_declare(queue='hello')
for index in xrange(10):
channel.basic_publish(exchange='', routing_key='hello',
body='Hello World #%s!' % index)
print('Total Messages Sent: %s' % x)
connection.close()
solo per curiosità, è necessario BlockingConnection() per chiamare channel.confirm_delivery()? – Jeffrey04
@ Jeffrey04: deve essere supportato in tutti i tipi di connessione, poiché è definito nell'oggetto del canale di base. https://github.com/pika/pika/blob/f8c263f234cca6b0f573ac63268a4034e32bd3eb/pika/channel.py#L388 – eandersson
grazie per il chiarimento (: – Jeffrey04