Camel/Kinesis 似乎忽略了我在 uri 中设置的 maxResultsPerRequest 和贪婪参数。
<camelContext xmlns="http://camel.apache.org/schema/blueprint" >
<route>
<from uri="aws-kinesis://my-stream?maxResultsPerRequest=25&greedy=true"/>
<to uri="stream:out"/>
</route>
</camelContext>
由于分片中有一堆消息等待消费,我希望它一次读取前 25 条,看看还有更多,然后立即轮询以获取下 25 条。
但相反,它仍然一次读取一个,以每半秒一个的速度读取它们(这与文档中指定的默认轮询延迟 500 毫秒一致)。将延迟参数调整为更短似乎也无济于事。
所以它似乎忽略了 maxPerRequest 和贪婪标志。
maxResultsPerRequest:每次轮询中将获取的最大记录数(int,默认 1)
greedy:如果启用了 greedy,则 ScheduledPollConsumer 将立即再次运行,如果之前的运行轮询了 1 条或更多消息。(布尔值,默认为假)
delay:下一次轮询前的毫秒数(long,默认 500)
我是否误解了这些参数的作用?