Hi Sanjiva
I was chatting with Asankha the other day and he explained that the current load balancing endpoint is doing not just load balancing but also failover. That is, it picks a node to deliver to, copies the message, sends it and if it succeeds sends the response and done or if it fails it will send the message to the next endpoint and so on.

So its really a failover + loadbalancing endpoint.

While its a useful feature, it has a major performance hit - it has to keep a copy of the message in memory.

So, I'd like to suggest that we write a pure load-balancing only endpoint that does not support failover. This will be useful for people who are concerned about memory implications of the current failover+loadbalancing endpoint.
Sorry if I was not clear.. we already have this when the "failover" attribute is set to "false" - but the default is to use failover with load balancing. Internally the message is either serialized, or serialized with consume depending on this

<session type="http|simpleClientSession"/>?
<loadBalance [policy="roundRobin"] [failover="true|false"]>
 <endpoint .../>+
</loadBalance>

Reference: http://synapse.apache.org/Synapse_Configuration_Language.html#load-balanced-endpoint

Cheers
asankha

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to