我想知道Camel是否可以根据交换的内容进行限制。
情况如下:我必须通过soap 调用网络服务。其中,发送到该webservice的参数中有一个customerId。问题是,如果给定的 customerId 每分钟有超过 1 个请求,则 Web 服务会发回错误。
我想知道是否可以使用 Camel 对每个 customerId 实施限制。因此,不应对所有消息实施限制,而应仅对具有相同 customerId 的消息实施限制。
让我知道如何实现这一点或者我是否需要澄清我的问题。
ActiveMQ 消息组 http://activemq.apache.org/message-groups.html是为了处理这种情况而设计的。因此,如果您可以在路由中引入 JMS 队列跃点,则只需将 JMSXGroupId 标头设置为 customerId 即可。然后,在另一条路线中,您可以从此队列中使用并将其发送到您的 Web 服务以获取您所描述的行为。
另见http://camel.apache.org/parallel-processing-and-ordering.html http://camel.apache.org/parallel-processing-and-ordering.html了解更多信息...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)