Implement the request response pattern making use of a CorrelationId to track the recipient of the reply. Will also require the RepyTo meta-data be added on Send, to allow receiver to know where to send message to.
Example:
Bus.Send(msg)
Add ReplyTo
Bus.Reply(msg) (of inbound message)
Add CorrelationId which equals MessageId of inbound Msg
Need to design how the ReplyTo queue is determined. Suggestion is to use a single queue per host, which will need to be part of the configuration. This queue name must the same for all instances of the host (ie if scaled out to 10 machines they all use the same queue).
Presently a Send uses Topics/Subscriptions, however this seems complex when sends are not pub/sub messages. Might be better to use a standard queue for this pattern.
Implement the request response pattern making use of a CorrelationId to track the recipient of the reply. Will also require the RepyTo meta-data be added on Send, to allow receiver to know where to send message to.
Example:
Bus.Send(msg)
Add ReplyTo
Bus.Reply(msg) (of inbound message)
Add CorrelationId which equals MessageId of inbound Msg
Need to design how the ReplyTo queue is determined. Suggestion is to use a single queue per host, which will need to be part of the configuration. This queue name must the same for all instances of the host (ie if scaled out to 10 machines they all use the same queue).
Presently a Send uses Topics/Subscriptions, however this seems complex when sends are not pub/sub messages. Might be better to use a standard queue for this pattern.