Brandon,

You can do this with a queue route (i.e. the downstream broker subscribes to an existing queue).

Static exchange routes may be durable, meaning they will reappear after a restart, but their queues are always transient. Furthermore, when the route is down, there is no queue to hold the messages produced.

If you create a queue, then establish a queue route to draw from that queue, the messages will accumulate there when the downstream broker is disconnected.

When you set up the route in qpid-route, use the --ack N option with an N greater than zero. This causes the brokers to acknowledge messages and will ensure that in-doubt messages (i.e. in flight during the failure) will be re-transmitted upon reconnection.

The qpid-route syntax is:

qpid-route [OPTIONS] queue add <dest-broker> <src-broker> <exchange> <queue> [mechanism]

where <exchange> is the name of the exchange on <dest-broker> where messages will be delivered to and <queue> is the name of the queue on <src-broker> where messages will be received from.

-Ted

On 09/20/2011 03:46 PM, Brandon Pedersen wrote:
I am trying to get something like this working:

- publish a message to a local exchange
- have the message get pushed to a remote exchange (or
pulled...preferably pushed)
and
- if the remote broker goes down, when it comes back up it will
receive all messages it missed while it was down

I can get the first 2 working with a simple static route. However,
when the remote broker goes down it does not receive any of the
messages that were sent while it was down. Is there any way to do
this? And everything is being marked as durable (the queue, the
exchange, the binding, and the route)

Thanks,

-Brandon

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to