[rabbitmq-discuss] Throughput observation with RabbitMQ-3.1.3 and Erlang R16B01 - Single Node and Cluster Node

Priyanki Vashi vashi.priyanki at gmail.com
Fri Aug 16 17:04:06 BST 2013


Hi Again ,

Thank you for your reply.

1) Sorry about not pasting code. But I realized that code is too long to
directly paste so I attached files then but looks like they are not
received so I am attaching again.

2) My exchange  as well as queue names are not really long. Neither my
routing key. For simplicity I just created exchange, queue and routing key
as string '1' , '2' like that so that later if required it's easy to
automate. For now I just run manually.

3) Regarding using faster client, I understand your point now and would
definitely give a try and see how it goes. I am thinking to give a try for
amqpc since it looks easy to give a try.

4) If you can quickly have a look at my current publisher/consumer and give
some higher level comments then it would help me to get direction.
In order to have easy start, I just adapted the examples of producer and
consumer given on pika site and I have not really brought in any major
changes since I wanted to get everything working and then slowly make
improvements if really required to this code.

Best Regards,
Priyanki.


On Fri, Aug 16, 2013 at 5:45 PM, Michael Klishin <mklishin at gopivotal.com>wrote:

> Priyanki Vashi:
>
> > content header = 88 bytes ( does not show any direct info so not sure)
> > basic.publish frame = 85 bytes ( shows details of queue, exchange,
> routing key etc)
> > content body = 137 bytes ( in this my payload is 100 bytes of string +
> 37 bytes might be checksum etc.)
> > basic.ack = 87 bytes (shows delivery tag number)
> >
> > so from this I interpreted as 297 bytes  non-payload + 100 bytes of
> actual payload = 397 total bytes for every message on wire.
> >
> > Is this not normal ?
>
> I'd need to sit down and calculate how many bytes would a bare content
> header be packed into
> but it's about right, except that
>
>  * content header and body will vary depending on what you publish, what
> values the properties have, etc
>  * basic.ack is optional, that is, you can publish without acks (which
> trades safety for improved throughput)
>
> I'm slightly surprised that basic.publish frame is almost 90 bytes but it
> may be the case if e.g.
> exchange name is unusually long.
>
> > My publisher and consumer code looks like this.
>
> I assume it wasn't pasted by accident?
>
> > 2) Regarding Interrupts and context switches point:
> > I agree and understand what you said about context switch but I wanted
> to bring this up since I felt my CPU was spending lot of time in doing
> context switches and that could be one of the reason that I don't get any
> higher throughput even if I increase number of producer and receiver.
>
> How many cores (logical) does your CPU have? Do you only run a publisher
> and RabbitMQ on this machine?
>
> > 3) Regarding changing to faster clients like Java or amqpc:
> > My current concern is not that I don't have sufficinet throughout, I
> would like to understand given the fact later project need to use python
> based client and not java based client, would like to understand how system
> resources are used by rabbitmq.
>
> Seeing what kind of throughput you get with MulticastMain and/or amqpc
> will show you
> how fast your hardware, network and RabbitMQ node can go. This can prove
> if you
> are limited by your publisher's performance.
>
> Then you can profile your publisher to see what takes time. I wasn't
> suggesting that you
> should just use Java for your project, only to see if you can get a
> noticeably better
> throughput with a different client.
> --
> MK
>
>
> _______________________________________________
> rabbitmq-discuss mailing list
> rabbitmq-discuss at lists.rabbitmq.com
> https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20130816/b043f76d/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Pika_Pub_Cons.zip
Type: application/zip
Size: 8533 bytes
Desc: not available
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20130816/b043f76d/attachment.zip>


More information about the rabbitmq-discuss mailing list