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]