当前位置: 首页 > 知识库问答 >
问题:

Camel FTP2消费者与quartz2调度器-如何获得等价的有状态作业?

公冶龙野
2023-03-14
from("sftp://myhost?username=sftptest&password=password&antInclude=*.csv&scheduler=quartz2&scheduler.cron=0/2+*+*+*+*+?&streamDownload=true")
    .to("file://c:/var");

所以我有我需要的东西(我不认为我需要任何Quartz特定的功能),但是这两个调度器有不同的行为似乎是一个问题。有人知道默认行为应该是什么吗?这里有窃听器吗?

共有1个答案

齐永昌
2023-03-14

这不是一个bug,这只是石英的工作方式。我们有同样的问题,为了解决它,我们

  • 将石英线程池大小限制为1
  • 将fireTime exchange标头与“now”进行比较,如果delta>1s,则停止路由执行

第二点是必要的,因为quartz排队触发的触发器没有可执行的线程。如果您不需要quartz特定的功能,您可能确实更好地使用其他Compoment,如Timer。

 类似资料:
  • 我想描述以下场景:我有一个节点。js后端应用程序(它使用单线程事件循环)。这是系统的总体架构:Producer- 假设制作者向Kafka发送了一条消息,这条消息的目的是在数据库中进行某个查询并检索查询结果。但是,众所周知Kafka是一个异步系统。如果制作者向Kafka发送消息,它会得到一个响应,表明该消息已被Kafka经纪人接受。Kafka broker不会等到消费者轮询消息并处理它。 在这种情况

  • 在Java尝试使用一个简单的计数器来实践生产者和消费者。不知道为什么我会在这段代码上得到一个非法的监视器状态异常。 我有计数器rest和计数器Consumer方法,它们在自己的线程中运行。计数器本身是一个静态的int volatile字段。counter类还为您提供了一个锁 如果将wait naotify更改为: 代码起作用了。dosen't wait()和notify()自动获得锁synchro

  • 是否有一种方法以编程方式访问和打印使用者滞后偏移,或者说使用者读取的最后一条记录的偏移与某个生产者写入该使用者分区的最后一条记录的偏移之间的位置差。 要知道我的最终目标是将这个值发送到prometheus进行监视,我应该在上面添加哪些语句来得到滞后偏移值?

  • 我刚刚注意到,当我在分区中生成单个消息时,我的使用者不会收到它。只有在我在同一分区中生成了更多的消息之后,使用者才会收到它们。我的数设置为 1。 是否有其他一些配置可能会影响这里? 每个分区都有一个专用的消费者。 相关部件的使用者代码。我的使用者为 定义的不同主题启动多个线程。使用 https://github.com/mmustala/rdkafka-ruby 这是原始消费宝石的叉子。我添加了一

  • 我花了几个小时想弄清楚发生了什么,但没能找到解决办法。 这是我在一台机器上的设置: 1名zookeeper跑步 我正在使用kafka控制台生成器插入消息。如果我检查复制偏移量(

  • Kafka消费者是否一直在检查代理(Kafka服务器)的运行状况,反之亦然 让我们说,无论如何,消费者和经纪人都知道彼此的健康状况,那么消费者将如何准确地从分区中读取 假设一个主题有48个分区,该主题有两个使用者组,那么有多少线程将使用所有分区中的数据