Re: possible cool change to pn_messenger_route()

2013-04-16 Thread Alan Conway

On 04/09/2013 03:59 PM, Rafael Schloming wrote:

On Tue, Apr 9, 2013 at 2:00 PM, Michael Goulish mgoul...@redhat.com wrote:




I like your  pattern -- { broadcast, balance, failover } ( addr, addr,
... addr )
idea a lot better than my multiple rules w/ same pattern.

I just think runtime-adaptive address translation could be very powerful.

i.e. for failover scenario, think of (old) Qpid clustering -- when one node
failed, a new node with a new addr stands up -- and advertises its addr.
It would get added to this rule

 pattern --  failover ( addr1, addr2, addr_new )

And the dead node deleted.



I agree it is a very tantalizing possibility. I think application-specific
content based routing is the killer motivating scenario as that is
something where you couldn't use a turn-key router, and also not something
you are going to do via a config file.



Its my feeling that this functionality should be built on top of proton, not as 
part of proton - exactly because its difficult to cover all the things that 
people might want to do in a generic router. The routing library/plugin could 
provide the kind of routing table discussed on the list by default, but could 
also be presented as a toolkit that lets you plug your own routing code in, use 
your own config files or database etc.




Re: possible cool change to pn_messenger_route()

2013-04-09 Thread Rafael Schloming
On Tue, Apr 9, 2013 at 2:00 PM, Michael Goulish mgoul...@redhat.com wrote:



 I like your  pattern -- { broadcast, balance, failover } ( addr, addr,
 ... addr )
 idea a lot better than my multiple rules w/ same pattern.

 I just think runtime-adaptive address translation could be very powerful.

 i.e. for failover scenario, think of (old) Qpid clustering -- when one node
 failed, a new node with a new addr stands up -- and advertises its addr.
 It would get added to this rule

 pattern --  failover ( addr1, addr2, addr_new )

 And the dead node deleted.


I agree it is a very tantalizing possibility. I think application-specific
content based routing is the killer motivating scenario as that is
something where you couldn't use a turn-key router, and also not something
you are going to do via a config file.

--Rafael