Hi,<div><br></div><div>Maybe what you could do is to have a pool of workers and then just one consumer, so the consumer will dispatch work to "one message at the time" to each of the workers.</div><div><br></div>
<div>Not sure what's the advantage of doing this.</div><div><br></div><div>-Alvaro</div><div><br><div class="gmail_quote">On Mon, Apr 2, 2012 at 10:54 AM, Christos Stavrakakis <span dir="ltr"><<a href="mailto:stavr.chris@gmail.com">stavr.chris@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><u></u>
<div bgcolor="#ffffff" text="#000000"><div class="im">
On 04/02/2012 11:42 AM, Simone Busoli wrote:
<blockquote type="cite"><font face="trebuchet ms,sans-serif">Hi Raoul,</font>
<div><font face="trebuchet ms,sans-serif"><br>
</font></div>
<div><font face="trebuchet ms,sans-serif">if you set prefetch-count
to 1 on the consumer channel then each consumer on the queue will get
one message at a time. Exploiting the default broker behavior by which
multiple consumers on a queue are delivered messages in a round-robin
fashion, the end result should be what you described.<br>
</font><br>
</div>
</blockquote>
<br></div>
In my understanding, what Raoul wants, is to deliver a message to one
consumer, only if all other consumers do not hold an unacked message. I
think that with prefetch-count 1 what is<br>
guaranteed is that each consumer will not get a second message, before
sending an ACK for the previous. However, a different consumer can get
a message while<br>
some other consumers hold an unacked message. Am I correct ? <br>
<br>
Chris<div class="im"><br>
<br>
<blockquote type="cite">
<div>
<div class="gmail_quote">On Mon, Apr 2, 2012 at 10:37, Raoul Buzziol <span dir="ltr"><<a href="mailto:raoulus@gmail.com" target="_blank">raoulus@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="border-left:1px solid rgb(204,204,204);margin:0pt 0pt 0pt 0.8ex;padding-left:1ex">Hi,<br>
<br>
I'm looking for a way to consume messages from a queue by multiple
consumer one at a time. The queue should deliver a new message only
after an ack. <br>
<br>
The way I found to handle it is to let the consumer be exclusive. But
In this case only one consumer can be access to the queue. <br>
My clients comes and goes, should they try to consume all interested
queues and skip those whom rejects access? And then poll accessibility
of available queues?<br>
Are there better solutions, is this the way or am I wrong?<br>
<br>
Thanx, Raoul<br>
<br>
(.net client on RabbitMQ 2.8.1)<br>
<br>
_______________________________________________<br>
rabbitmq-discuss mailing list<br>
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com" target="_blank">rabbitmq-discuss@lists.rabbitmq.com</a><br>
<a href="https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss" target="_blank">https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss</a><br>
<br>
</blockquote>
</div>
<br>
</div>
<pre><fieldset></fieldset>
_______________________________________________
rabbitmq-discuss mailing list
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com" target="_blank">rabbitmq-discuss@lists.rabbitmq.com</a>
<a href="https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss" target="_blank">https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss</a>
</pre>
</blockquote>
<br>
</div></div>
<br>_______________________________________________<br>
rabbitmq-discuss mailing list<br>
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com">rabbitmq-discuss@lists.rabbitmq.com</a><br>
<a href="https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss" target="_blank">https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss</a><br>
<br></blockquote></div><br></div>