Hi Flavio,<br><br>If you haven't already, you may want to investigate setting up competing consumers.<br><br>Thanks,<br>Zach<br><br>On Wednesday, June 19, 2013 4:41:14 AM UTC-5, Flavio Pompermaier wrote:<blockquote class="gmail_quote" style="margin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">Hi to everybody,<div>I'm new to RabbitMQ but from what I see it could be the solution for a buffer implementation in one of my project.</div><div>In my scenario there will be a big queue of tasks (i.e. document indexing) that should be served as fast as possible,</div><div><br></div><div>Looking at the tutorial I think that what I need is somehow similar to the Work queues (<a href="http://www.rabbitmq.com/tutorials/tutorial-two-python.html" target="_blank">http://www.rabbitmq.com/<wbr>tutorials/tutorial-two-python.<wbr>html</a>) plus fair dispatching.</div><div>However, the aforementioned constraint "served as fast as possible" is not clear how to design a correct size of workers, in a scalable way..</div><div>In every example, a worker is a standalone java process, whereas I would like to manage workers more like a pool and take the first available one..</div><div><br></div><div>So, I think that I can summarize my questions as:</div><div><br></div><div>1) What is the best RabbitMQ architecture to solve my problems?</div><div>2) If my poolable solution is correct, how can I set up a pool? How do I decide the best size of the pool?</div><div>3) What if I discover that my server is overloaded and I want to distribute the load? How can I avoid to store all the queues message in just one server (if I want persistable queues)?</div><div><br></div><div>Best regards,</div><div>Flavio</div></blockquote>