[rabbitmq-discuss] Simple benchmark and results

Philippe Kirsanov pkirsanov at 38studios.com
Wed Oct 21 18:57:16 BST 2009


What exactly "noAck" parameter in basicConsume mean? Is it auto-ack on
message or something else? API guide sais it is "handshake ack".
On api-guide page there is an example that sets noAvk = false and also
sends ack upon message delivery:
boolean noAck = false;
QueueingConsumer consumer = new QueueingConsumer(channel);
channel.basicConsume(queueName, noAck, consumer);
while (/* decide whether to continue reading */) {
    QueueingConsumer.Delivery delivery;
    try {
        delivery = consumer.nextDelivery();
    } catch (InterruptedException ie) {
        continue;
    }
    // (process the message components ...)
    channel.basicAck(delivery.getEnvelope().getDeliveryTag(), false);
}



-----Original Message-----
From: rabbitmq-discuss-bounces at lists.rabbitmq.com
[mailto:rabbitmq-discuss-bounces at lists.rabbitmq.com] On Behalf Of David
Glaubman
Sent: Wednesday, October 21, 2009 13:45
To: rabbitmq-discuss at lists.rabbitmq.com
Subject: Re: [rabbitmq-discuss] Simple benchmark and results


Matthias,

You write:
[...]
> Note that there is one obvious difference to the .net tests: 
> By setting the "-a" flag the consumers will operate 
> in auto-ack mode, whereas in the .net code you posted you do an
explicit
> ack. 
> The former is quite a bit more efficient and may well account 
> for the bulk of the difference between the .net and java consumer
> performance. 

Bingo! Setting 'noAck' = true on basicConsume increases messages
received to
about 33K per sec.

As to the low send rate --
> Given that sending is asynchronous

Not so fast! (so to speak;-) -- rabbit .Net client uses TCPClient, 
which "provides simple methods for connecting, sending, and receiving 
stream data over a network in synchronous blocking mode." 
(http://msdn.microsoft.com/en-us/library/system.net.sockets.tcpclient.as
px)

> Can you package up your test code in a form that makes it 
> straightforward to run and thus try to reproduce your results? 
> Bonus points if it is easy to get the test to run under mono.

Okay.

Thanks 
David

-----Original Message-----
From: Matthias Radestock [mailto:matthias at lshift.net] 
Sent: Wednesday, October 21, 2009 12:42 AM
To: David Glaubman
Cc: rabbitmq-discuss at lists.rabbitmq.com
Subject: Re: [rabbitmq-discuss] Simple benchmark and results

David,
[...]

-- 
View this message in context:
http://www.nabble.com/Simple-benchmark-and-results-tp25968960p25997030.h
tml
Sent from the RabbitMQ mailing list archive at Nabble.com.


_______________________________________________
rabbitmq-discuss mailing list
rabbitmq-discuss at lists.rabbitmq.com
http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss




More information about the rabbitmq-discuss mailing list