[rabbitmq-discuss] Puka client and publisher confirms performance
Marek Majkowski
majek04 at gmail.com
Tue Mar 20 10:41:09 GMT 2012
On Wed, Mar 14, 2012 at 18:59, Marek Majkowski <majek04 at gmail.com> wrote:
> On Wed, Mar 14, 2012 at 18:42, Marek Majkowski <majek04 at gmail.com> wrote:
>> On Wed, Mar 14, 2012 at 12:31, Christos Stavrakakis
>> <stavr.chris at gmail.com> wrote:
>>> I am using Puka client [1] in order to send messages with guaranteed
>>> delivery using publisher confirms.
>>>
>>> Trying to send 200.000 messages I see that waiting for the confirms, takes a
>>> lot of time.
>>>
>>> To be more specific:
>>>
>>> promises = []
>>> t0 = time.time()
>>> for i in range(0,200000):
>>> promise = client.basic_publish(exchange='test_exchange',
>>> routing_key='test',
>>> body="Hello
>>> world!")
>>> promises.append(promise)
>>>
>
> Right, there is a performance problem with handling pubacks. The complexity
> grows with n^2 of unacked messages
>
> Good news: the problem is in this line:
> https://github.com/majek/puka/blob/master/puka/machine.py#L147-148
>
> Bad news: I have no clue how to fix it.
>
> I've rised an issue on github:
> https://github.com/majek/puka/issues/12
Christos,
Thanks for your report and for the pull request!
I just uploaded puka 0.0.4 to pypi, which solves the problem.
Cheers,
Marek
More information about the rabbitmq-discuss
mailing list