Load Balance — Balances message processing among a number of nodes
The Load Balance pattern uses a specified algorithm for balancing the processing load among a number of processors.
The Load Balance pattern can appear anywhere in the body of a route. It should be connected to one or more identical processors across which processing can be spread.
![]() | Note |
|---|---|
Though the Inherit Error Handler property appears in the Properties editor for almost every EIP, its use is appropriate with the Load Balance pattern only. |
Table 14 describes the properties you can specify using the properties editor.
Table 14. Load Balance Properties
| Name | Description |
|---|---|
| Load Balancer Type |
Specifies and configures the load balancing strategy. Selections include:
|
| Description | Specifies a text description for the node. This description is included in the generated XML file, but it is informational only. It is not used by Apache Camel. |
| Id | Specifies a unique identifier for the endpoint. The tooling automatically generates an id for a node when it is created, but you can remove that id or replace it with your own. The Camel debugger requires all nodes with a breakpoint set to have a unique id. You can use the id to refer to endpoints in your Camel XML file. |
| Inherit Error Handler | Specifies whether the node should use the error handler configured for the route.
The default is Disabled. |
Table 15 describes the properties needed to configure a failover load balancer.
Table 15. Failover Load Balance Properties
| Name | Description |
|---|---|
| Exceptions | Specifies the exceptions that cause a failover. All other exceptions will cause a failure. |
| Maximum Failover Attempts | Specifies the maximum number of attempts before giving up.
-1 specifies unlimited attempts. |
| Round Robin | Enables/disables round robin mode. Default is
Disabled. |
Table 16 describes the properties needed to configure a custom load balancer.
Table 16. Custom Load Balance Properties
| Name | Description |
|---|---|
| Ref | Specifies a reference to the bean implementing the load balancing strategy. |
Table 17 describes the properties needed to configure a sticky load balancer.
Table 17. Sticky Load Balance Properties
| Name | Description |
|---|---|
| Correlation Expression | Specifies the expression used to generate the correlation key used by the load blancer. |
Table 18 describes the properties needed to configure a Weighted load balancer.
Table 18. Weighted Load Balance Properties
| Name | Description |
|---|---|
| Distribution Ratio | Specifies a delimited list of positive integers determining the relative weight for each endpoint. The number of entries in the list must match the number of endpoints available for load balancing. |
| Distribution Ratio Delimiter | Specifies the character used to delimit the entries in the distribution ratio list. |
| Round Robin | Enables/disables round robin mode. Default is
Disabled. |
Table 19 describes the properties needed to configure a circuit breaker load balancer.
Table 19. Circuit Breaker Load Balance Properties
| Name | Description |
|---|---|
| Exceptions | Specifies the exceptions that cause a failure. |
| Helf Open After | Specifies the time, in milliseconds, to wait after reaching the threshold limit before the circuitBreaker allows a new message to pass. Depending on the success status of the new message, the circuitBreaker either passes or blocks subsequent messages. |
| Threshold | Specifies the maximum number of failures allowed before the circuitBreaker blocks all subsequent messages. |