<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#ffffff" text="#000000">
Hi,<br>
<br>
I am using Puka client [1] in order to send messages with guaranteed
delivery using publisher confirms.<br>
<br>
Trying to send 200.000 messages I see that waiting for the confirms,
takes a lot of time.<br>
<br>
To be more specific:<br>
<br>
&nbsp;&nbsp;&nbsp; promises = []<br>
&nbsp;&nbsp;&nbsp; t0 = time.time()<br>
&nbsp;&nbsp;&nbsp; for i in range(0,200000):<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; promise = client.basic_publish(exchange='test_exchange',
routing_key='test',<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
body="Hello world!")<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; promises.append(promise)<br>
<br>
&nbsp;&nbsp;&nbsp; t1 = time.time()<br>
&nbsp;&nbsp;&nbsp;<big> client.wait(promises)</big><br>
&nbsp;&nbsp;&nbsp; t2 = time.time()<br>
&nbsp;&nbsp;&nbsp; promise = client.close()<br>
&nbsp;&nbsp;&nbsp; client.wait(promise)<br>
<br>
In this example t1-t0 is arround 9s while t2-t1 is more than 100
seconds!!<br>
Increasing the number of messages results in even worse performance.<br>
<br>
Can anyone explain this behavior ? Is there a more effective way to use
publisher confirms ?<br>
<br>
Chris<br>
<br>
<br>
[1]: <a class="moz-txt-link-freetext"
 href="https://github.com/majek/puka">https://github.com/majek/puka</a>
</body>
</html>