Request/reply (RPC) over RabbitMQ enables synchronous-style request-response communication using messaging — a client sends a request and receives a response via a reply queue, using a correlation ID to match responses to requests. It's a useful pattern for service-to-service calls.
How RPC works in RabbitMQ
RPC pattern over messaging:
1. CLIENT sends a REQUEST message, including:
→ a REPLY-TO queue (where the response should go)
→ a CORRELATION ID (unique ID to match the response to this request)
2. SERVER (consumer) processes the request and sends a RESPONSE to the reply-to queue,
including the same CORRELATION ID
3. CLIENT receives the response from its reply queue, matches it by CORRELATION ID →
pairs the response with the original request
→ request-response over async messaging
