使用Camel Throttler组件,您可以定义每个时间段消耗的消息速率的上限,例如:
math.h
我认为非理想的是Camel Throttler在被Throttler阻止的情况下将交换保留在内存中。因此,如果你有100个队列消费者,并且由于任何原因“direct-vm:bla”很慢(例如调用外部慢速服务),你可能在内存中最多有100个交换机!
我想知道是否有ActiveMQ功能来强制要求ActiveMQ级别的限制。甚至可能在每个队列级别上。类似于HornetQ的消费者最大率。
答案 0 :(得分:1)
将使用者配置为使用事务(不必是XA事务。如果您只有一个其他端点使用本地JMS事务。请参阅:LLR事务方法)。如果Camel路由失败,则消息将回滚到代理。