我在 ActiveMQ 中有 4 个队列,每个队列中的消息应该发送到外部服务,以便从我使用 Apache Camel 的队列中获取消息,并且我正在限制消息。
但我的问题是,对于不同的队列,我有不同的社交时间。例如
队列 1 消息只能在上午 6 点到下午 5 点之间发送,
队列 2 消息只能在上午 10 点到晚上 10 点之间发送。
所以我想知道如何使用 Apache Camel 节流来处理这个问题。或者请建议我一些解决方案。
如果有人没有解决我的问题,请告诉我。提前致谢。
最佳答案
Camel 允许您将路由与路由策略相关联。我们有一个基于 Camel quartz 并按计划进行的开箱即用的政策。这允许您设置路线的开放时间政策。
文档从这里开始:http://camel.apache.org/routepolicy 。并且有从该页面到基于调度程序的策略的链接。
注意有一张票 - http://issues.apache.org/jira/browse/CAMEL-5929 - 关于如果您重新启动应用程序服务器,那么如果您在开放时间内启动,则路线不会启动。例如,您的时间为中午 12 点至下午 6 点。然后您在下午 3 点(例如在其间)重新启动应用程序。然后就是我第二天开始的路线。该票证允许您配置为在打开窗口内启动时强制启动。
关于java - 基于时间间隔的节流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14228786/