...
See the javadoc of the org.apache.camel.spi.RoutePolicy
for more details.
And also the implementation of the org.apache.camel.impl.ThrottlingRoutePolicyThrottlingInflightRoutePolicy
for a concrete example.
Camel provides the following policies out of the box:
org.apache.camel.impl.ThrottlingRoutePolicyThrottlingInflightRoutePolicy
- a throttling based policy that automatic suspends/resumes route(s) based on metrics from the current in flight exchanges. You can use this to dynamic throttle e.g. a JMS consumer to avoid it consuming too fast.
Tip | ||
---|---|---|
| ||
If you want to dynamic suspend/resume routes as the |
...
ThrottlingInflightRoutePolicy
The throttling inflight route policy has the following options:
Option | Default | Description |
---|---|---|
scope | Route | A scope for either |
maxInflightExchanges | 1000 | The maximum threshold when the throttling will start to suspend the route if the current number of inlfight exchanges is higher than this value. |
resumePercentOfMax | 70 | A percentage 0..100 which defines when the throttling should resume again in case it has been suspended. |
loggingLevel | INFO | The logging level used for logging the throttling activity. |
logger | ThrottlingRoutePolicy ThrottlingInflightRoutePolicy | The logger category. |
Configuring policy
...
- Route Throttling Example for an example using this in practice with the ThrottlingInflightRoutePolicy
- Architecture