Thanks for your quick reply. It helps me to understand the context of that tutorial. I was simply reading too much into it.
I am concerned about concurrent callers because I need to make an RPC-style request/response coming from a servlet container thread. Reading the direct-reply feature documentation, it appears that creating a reply-to queue for each caller is inefficient...which I can believe.
Here is the part I don't understand for the documentation...it says an RPC client should "Consume from the pseudo-queue amq.rabbitmq.reply-to in no-ack mode."
Not sure what that would look like in Java code. So far, my dealings with RabbitMQ have been with Spring Integration, which provides a nice layer of abstraction, but has kept me from having to learn much about the underying implementation.
The the documentation says: "Set the reply-to property in their request message to amq.rabbitmq.reply-to"
Does this mean I literally set the "reply-to" header to "amq.rabbitmq.reply-to"? If so, is RabbitMQ generating a unique name and replacing the message's reply-to header? How does rabbit later correlate a message from my rpc-style server with the waiting thread?
I am sorry for asking questions about these details, but I have a 2nd related issue with RPC-style communication I am trying to solve, which, when I understand things better, I'll create another post for....
Dave