代码之家  ›  专栏  ›  技术社区  ›  burki

如何恢复暂停的骆驼消费者

  •  0
  • burki  · 技术社区  · 6 年前

    我创造了一个 RoutePolicy 当路由中发生可配置数量的错误时,将挂起使用者。

    一定要恢复 经过一段可配置的时间(例如暂停后30分钟)。

    实现这一目标的最佳方法是什么?

    • 我试着用 onExchangeBegin 路径策略的方法。但在一次测试中,我发现当路由被挂起时(正如我所假设的那样),它不再执行。
    • SimpleScheduledRoutePolicy 在暂停路由之前,我没有找到在Camel上下文(由Spring支持)中注册这个新Bean的方法。
    • 因此,我现在创建了一个 TimerTask Camel Control Bus 恢复路线。这是可行的,但感觉有点陌生,因为骆驼不知道这样的简历任务。
    • 有没有另一种更“骆驼本土”的方式来达到我的目标?
    0 回复  |  直到 6 年前
        1
  •  0
  •   Sneharghya Pathak    6 年前

    对带有过滤器的虚拟文件进行另一个路由轮询,以检查它是否在30分钟前创建。比如:

    from("file:dummyLocation?include=.dummy&delete=true&filter=#filterFileOlderThanThirtyMins)
    .to("controlbus:route?routeId=suspendedRoute&action=start")
    

    不过,这只是我一时的冲动!