[rabbitmq-discuss] Re-subscribing to a queue in a cluster
Emile Joubert
emile at rabbitmq.com
Thu Oct 11 11:02:00 BST 2012
Hi Adam,
On 09/10/12 17:07, Adam Brightwell wrote:
> the RPC call involved with the basicConsume is blocking other Channel
> based operations. This is why I suspect that the "basicAck" was unable to
> execute successfully and that the "handleDelivery" was never being reached.
If you have multiple consumers per channel then long-running consumers
may hold up dispatch of callbacks to other consumers on that channel.
The Java API guide has more information:
http://www.rabbitmq.com/api-guide.html
> instance, having a thread pool dedicated for such operations, utilizing
> java's ExecutorService or is there something already built in to the
> client api that will provide me a way to run this code if I wrapped it in
> a Runnable, Callable, etc.?
You may supply your own ExecutorService if you need to - see the API
guide again.
> Also, as a side note, has any consideration been given to using java's
> concurrency model more widely in the java client api? For instance,
> synchronization of methods or code blocks to possibly help avoid such
> situations?
I'm not sure how much more concurrency can be offered without violating
ordering constraints. Please feel free to suggest concrete improvements.
-Emile
More information about the rabbitmq-discuss
mailing list