<br><br>
<div class="gmail_quote">On 22 November 2010 10:33, Matthew Sackman <span dir="ltr"><<a href="mailto:matthew@rabbitmq.com">matthew@rabbitmq.com</a>></span> wrote:<br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div class="im">On Mon, Nov 22, 2010 at 10:11:11AM +1100, Steven Taylor wrote:<br>> Are there any limits to how long or large a queue can get apart from disk<br>> space?<br><br></div>Yes. Unless you're using the rabbitmq-toke plugin, there is still a<br>
(very small) per message RAM cost in the form of an index from message<br>guid to file+offset+size. Ultimately, you can end up with all your RAM<br>in this index, and thus even though all messages are on disk, you won't<br>
be able to add more messages to a queue.<br></blockquote>
<div> </div>
<div>Fine</div>
<div><br>> Is there a limit to the message size?<br><br></div>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">Nope, but it must be able to fit in RAM, and it's probably risky to<br>attempt any message greater than one quarter of the amount of RAM<br>
installed owing to copying of the message etc which is likely to occur.<br></blockquote>
<div> </div>
<div>Sounds sensible.</div>
<div> </div>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div class="im"><br>> Is there a limit to the number of queue?<br><br></div>Yes. Each queue in Rabbit is an Erlang process. By default, we start up<br>the Erlang VM configured for a million processes, so you should be able<br>
to get close to that, especially off a single connection and channel. If<br>you need to get to these sorts of numbers then you may well need to<br>raise the Erlang VM process limit further. This will cost more RAM, but<br>
will allow you to create more AMQP resources.<br></blockquote>
<div> </div>
<div>So far we're talking 15 queus. I think we're okay. ;)</div>
<div> </div>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div class="im"><br>> Rather than one bus/queue with<br>> many message types, I'm creating a few queue for each simple units of work +<br>> having only a few message types per queue. Does anyone see a problem with<br>
> this approach when using RabbitMQ?<br><br></div>No, but if you need high performance and scalability, you may run into<br>issues. You may want to look at the queue expiry stuff as well and<br>obviously judicious use of exclusive and auto-delete flags is warranted.<br>
<div class="im"><br></div></blockquote>
<div> </div>
<div>we're not talking super high performance (yet). I'll need to watch this and get a feel for it. </div>
<div> </div>
<div> </div>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div class="im">> I'm at that nervous stage of it looks good, but I'm not quite sure yet. I<br>> guess I'm asking for experiences without having fully tested. I'm hoping to<br>> avoid potential pitfalls and save some time.<br>
<br></div>If in doubt, test ;) It _will_ fail at some point - and you need to<br>discover where that point is and how close it is to your requirements.<br></blockquote>
<div> </div>
<div>I have been testing, but sometimes I will need you guys to help me know what's going on underneath.</div>
<div> </div>
<div> </div>
<div>thanks,</div>
<div>-Steven</div></div>