[rabbitmq-discuss] Puka client and publisher confirms performance
Marek Majkowski
majek04 at gmail.com
Tue Mar 20 13:06:51 GMT 2012
On Tue, Mar 20, 2012 at 12:52, Aaron Westendorf <aaron at agoragames.com> wrote:
> I looked at the changes and in addition to those, I recommend using
> the Python deque class for your buffers. I noticed a significant
> improvement in performance when I switched to them in haigha.
For which buffers exactly? Network one: simplebuffer.py?
Marek
> On Tue, Mar 20, 2012 at 6:41 AM, Marek Majkowski <majek04 at gmail.com> wrote:
>> 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
>> _______________________________________________
>> rabbitmq-discuss mailing list
>> rabbitmq-discuss at lists.rabbitmq.com
>> https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
>
>
>
> --
> Aaron Westendorf
> Senior Software Engineer
> Agora Games
> 359 Broadway
> Troy, NY 12180
> Phone: 518.268.1000
> aaron at agoragames.com
> www.agoragames.com
More information about the rabbitmq-discuss
mailing list