基于内容的节流 [英] Throttling based on content
本文介绍了基于内容的节流的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想知道Camel是否可以根据交换内容进行限制。
情况如下:我必须通过SOAP调用Web服务。在发送到该Web服务的参数中,有一个CustomerID。问题是,如果给定客户ID每分钟有超过1个请求,则Web服务会发回一个错误。
我想知道是否有可能使用Camel按客户ID实现节流。因此,不应对所有消息实施限制,而应仅对具有相同CustomerID的消息实施限制。
让我知道如何实现这一点,或者如果我需要澄清我的问题。
推荐答案
ActiveMQ Message Groups就是为处理这种情况而设计的。因此,如果您可以在您的路由中引入JMS队列跃点,那么只需将JMSXGroupId头设置为CustomerID即可。然后,在另一种途径中,您可以使用此队列并将其发送到您的Web服务,以获得您所描述的行为。
另请参阅http://camel.apache.org/parallel-processing-and-ordering.html了解更多信息...
这篇关于基于内容的节流的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文