You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2012/11/07 09:59:20 UTC
svn commit: r1406502 - in /camel/trunk/examples/camel-example-loadbalancing:
./ README.txt
src/main/resources/META-INF/spring/camel-context-loadbalancer.xml
Author: davsclaus
Date: Wed Nov 7 08:59:19 2012
New Revision: 1406502
URL: http://svn.apache.org/viewvc?rev=1406502&view=rev
Log:
CAMEL-5775: Improved loadbalancer example to use failover LB.
Modified:
camel/trunk/examples/camel-example-loadbalancing/ (props changed)
camel/trunk/examples/camel-example-loadbalancing/README.txt
camel/trunk/examples/camel-example-loadbalancing/src/main/resources/META-INF/spring/camel-context-loadbalancer.xml
Propchange: camel/trunk/examples/camel-example-loadbalancing/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Wed Nov 7 08:59:19 2012
@@ -14,3 +14,4 @@ eclipse-classes
*.ipr
*.iml
*.iws
+*.idea
Modified: camel/trunk/examples/camel-example-loadbalancing/README.txt
URL: http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-loadbalancing/README.txt?rev=1406502&r1=1406501&r2=1406502&view=diff
==============================================================================
--- camel/trunk/examples/camel-example-loadbalancing/README.txt (original)
+++ camel/trunk/examples/camel-example-loadbalancing/README.txt Wed Nov 7 08:59:19 2012
@@ -8,12 +8,14 @@ separate JVMs. The load balancer pattern
sending in Round Robin mode the messages created from a Camel Bean component
alternatively between each server running on localhost:9991 and localhost:9992.
-Within this demo every five seconds, a Report object is created from the Camel load balancer server.
+Within this demo every ten seconds, a Report object is created from the Camel load balancer server.
This object is sent by the Camel load balancer to a MINA server where the object is then serialized.
One of the two MINA servers (localhost:9991 and localhost:9992) receives the object and enriches
the message by setting the field reply of the Report object. The reply is sent back by the MINA
server to the client, which then logs the reply on the console.
+If any of the two MINA servers is not running, then the load balancer will automatic failover
+to the next server.
Running the example
===================
Modified: camel/trunk/examples/camel-example-loadbalancing/src/main/resources/META-INF/spring/camel-context-loadbalancer.xml
URL: http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-loadbalancing/src/main/resources/META-INF/spring/camel-context-loadbalancer.xml?rev=1406502&r1=1406501&r2=1406502&view=diff
==============================================================================
--- camel/trunk/examples/camel-example-loadbalancing/src/main/resources/META-INF/spring/camel-context-loadbalancer.xml (original)
+++ camel/trunk/examples/camel-example-loadbalancing/src/main/resources/META-INF/spring/camel-context-loadbalancer.xml Wed Nov 7 08:59:19 2012
@@ -34,12 +34,14 @@
<to uri="direct:loadbalance"/>
</route>
+ <!-- use failover load balancer in round robin mode, to automatic failover to next server
+ in case of failure -->
<route id="loadbalancer">
<from uri="direct:loadbalance"/>
- <loadBalance>
- <roundRobin/>
- <to uri="mina:tcp://localhost:9991?sync=true&allowDefaultCodec=true"/>
- <to uri="mina:tcp://localhost:9992?sync=true&allowDefaultCodec=true"/>
+ <loadBalance inheritErrorHandler="false">
+ <failover roundRobin="true"/>
+ <to uri="mina:tcp://localhost:9991?sync=true"/>
+ <to uri="mina:tcp://localhost:9992?sync=true"/>
</loadBalance>
<log message="${body}"/>
</route>