Federated exchange and sync delivery

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Federated exchange and sync delivery

lepolac
Hi,

In the documentation it appears that the federation is seen as asynchronous.
What are exactly the delivery guarantees implemented in the federation ?
When are messages acknowledged by the downstream ?
Is there an equivalent of publisher confirms used internally for persistent messaging ?
On the consuming side, when does a message disappear from the queue ?

How far a downstream exchange lags behind its upstream peer ?

The overall question I'm trying to answer is, is federation viable for BCP purposes or is it too loosely coupled to take this risk.

Thanks !
Reply | Threaded
Open this post in threaded view
|

Re: Federated exchange and sync delivery

Michael Klishin-2
On 23 April 2014 at 11:20:35, lepolac ([hidden email]) wrote:
> > What are exactly the delivery guarantees implemented in the  
> federation ?
> When are messages acknowledged by the downstream ?
> Is there an equivalent of publisher confirms used internally  
> for persistent
> messaging ?

Publisher confirms and persistent storage are orthogonal things.

Federation uses regular AMQP client connections between nodes,
with confirms and handling of network failures.

> The overall question I'm trying to answer is, is federation viable  
> for BCP
> purposes or is it too loosely coupled to take this risk.

What is BCP? Federation is designed to be used over WAN links
(of course, you can use it over LAN if you want, too).

Design goals are listed on http://www.rabbitmq.com/federation.html
--  
MK  

Software Engineer, Pivotal/RabbitMQ
_______________________________________________
rabbitmq-discuss mailing list
[hidden email]
https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Federated exchange and sync delivery

lepolac
Hi,

Thanks for the reply, sorry, by BCP I meant disaster recovery, as in having a cluster in another datacenter with a state/msg content that is as close to the upstream cluster as possible.
If a publisher pushes a message on the upstream, does it get the confirm after the downstream has got/confirmed the message ?

Reply | Threaded
Open this post in threaded view
|

Re: Federated exchange and sync delivery

Michael Klishin-2
On 24 April 2014 at 00:59:03, lepolac ([hidden email]) wrote:
> > If a publisher pushes a message on the upstream, does it get the  
> confirm
> after the downstream has got/confirmed the message ?

Exchange federation uses publisher confirms. 
--  
MK  

Software Engineer, Pivotal/RabbitMQ
_______________________________________________
rabbitmq-discuss mailing list
[hidden email]
https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Federated exchange and sync delivery

lepolac
So is the following flow accurate ?

                   1                       2
publisher --------> upstream ------> downstream
          <--confirm---        <--confirm--
                   4                          3

Or would the upstream send the confirm back before the message reaches the downstream ?
Reply | Threaded
Open this post in threaded view
|

Re: Federated exchange and sync delivery

Michael Klishin-2
On 24 April 2014 at 02:39:21, lepolac ([hidden email]) wrote:
> > Or would the upstream send the confirm back before the message  
> reaches the
> downstream ?

Yes. Publisher confirms between a publisher (client) and RabbitMQ node
are unaware of federation links. 
--  
MK  

Software Engineer, Pivotal/RabbitMQ
_______________________________________________
rabbitmq-discuss mailing list
[hidden email]
https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss