Gary Tully created DISPATCH-512:

             Summary: Link route with alternate that can drain and revert
                 Key: DISPATCH-512
             Project: Qpid Dispatch
          Issue Type: Improvement
          Components: Routing Engine
            Reporter: Gary Tully

Link routing provides for direct dispatch. A sender can be directly associated 
with a receiver.
What happens when there is no receiver?
Having the option to use an alternative or divert address when the receivers 
are unavailable, and having the ability for the router to fall back to the 
original when the divert address has drained would be magical.

For example:
Sender published to address A
Receiver consumes from A and Sender is rate limited to the consumption rate of 
the receiver. all is good.

Receiver goes offline. At this point the Sender can block, however, if there is 
an alternative address, the Sender can continue to publish at any rate.

When the Receiver come online, the routing engine 'diverts' it to the alternate 
At some stage the routing engine may be able to undo the divert and reconnect 
the link from Sender to Receiver, once the alternate address has drained.
In theory this seems possible, in practice it may be tricky, but it would be a 
smashing feature.

For a bursty Sender it always gets to publish.
For a receiver, it gets to consume as fast as it can, and if it cannot keep-up 
(or is offline) it gets to resume from a alternative address and then auto 
reconnected to the Sender when there is a window to switch back. i.e: a pause 
in the producer.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail:
For additional commands, e-mail:

Reply via email to