【问题标题】:Apache Camel Schedule multiple times a dayApache Camel 每天多次调度
【发布时间】:2016-06-05 18:16:25
【问题描述】:

我必须每天在不同的固定时间执行/运行相同的任务。时间间隔不一样。

例如我想在 05:30、11:30、15:00、21:00 运行路由器。

我有很多带有调度程序石英的 apache 骆驼示例。但都具有静态时间间隔或仅可配置一次。

有没有办法在 apache camel 中配置?

【问题讨论】:

  • 您是要标记cron吗?这种事情在你的 crontab 中设置是微不足道的,但你的问题文本是在询问骆驼。
  • OP 实际上可以使用 Camel 的 Quartz 组件和 cron 配置来做他想做的事,但我有一种感觉他不知道正确的 cron 表达式来实现这一点(我也不知道我的头顶)。
  • 是的。我没有在 Camel 的 Quartz 中使用正确的 cron 表达式/配置。
  • 你不能用一个 Quartz cron 表达式来表达这个。您可以为一天中需要触发操作的每个时间创建一个简单的路由,然后只需从 trigger-routes 调用包含您的实际逻辑的路由。

标签: java cron apache-camel quartz-scheduler job-scheduling


【解决方案1】:

试试这样的:

<route>
  <from uri="quartz2://timer1?cron=0+30+5+*+*+*">
  <from uri="quartz2://timer2?cron=0+30+11+*+*+*">
  <from uri="quartz2://timer3?cron=0+00+15+*+*+*">
  <from uri="quartz2://timer4?cron=0+00+21+*+*+*">
  <to uri="...">
</route>

目前在quartz 组件中无法提供自定义触发器,并且quartz cron 触发器不支持您想要的。只需创建一个包含多个消费者的路由。

【讨论】:

    猜你喜欢
    • 2019-01-23
    • 1970-01-01
    • 2014-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多