[ 
https://issues.apache.org/jira/browse/CAMEL-20355?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17809786#comment-17809786
 ] 

Raymond commented on CAMEL-20355:
---------------------------------

Yes, I guess these are different use cases:

max 10 messages per 10 seconds

or 

max 10 messages of concurrent requests

I guess the first one is more independent of the computing power, where Camel 
runs. Say you have a slow (external) consumer that can handle a throughput of 
around 10 messages a second, then in the second case it may still be flooded 
with thousands of messages just because the server is fast. In short, in the 
first case, you throttle based on consumer and in the second case you throttle 
based on producer. 

The first probably is more to keep throughput constant (for slow 
consumers/consumer with rate limiting), while the second is used more to keep a 
steady stream (for example to keep the memory constant).

> Throttle EIP: milliseconds not available anymore
> ------------------------------------------------
>
>                 Key: CAMEL-20355
>                 URL: https://issues.apache.org/jira/browse/CAMEL-20355
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-k, camel-kamelet, documentation
>    Affects Versions: 4.3.0
>            Reporter: Raymond
>            Priority: Minor
>             Fix For: 4.x
>
>
> Recently, the Throttle EIP was changed. For example, in this issue:
> https://issues.apache.org/jira/browse/CAMEL-16099
> Now the option "{*}timePeriodMillis{*}" isn't available anymore:
> [https://camel.apache.org/components/next/eips/throttle-eip.html]
> This is also documented in the migration guide:
> [https://camel.apache.org/manual/camel-4x-upgrade-guide-4_3.html]
> However:
> 1. The option is still there in the examples of the latest documentation
> 2. The option is still there in the Kamelet catalog (4.3.0):
> [https://github.com/apache/camel-kamelets/blob/main/kamelets/throttle-action.kamelet.yaml]
> When loading the throttle from the Kamelet catalog, I got the following 
> message:
> {code:java}
> could not load: kamelets/throttle-action.kamelet.yaml. Reason: Field: 
> timePeriodMillis has already been configured as an expression
>  in throttle-action.kamelet.yaml, line 67, column 29:
>               timePeriodMillis: "{{timePeriod}}" {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to