gpt4 book ai didi

java - Camel : PollEnrich generating a lot of Timed Waiting threads

转载 作者:行者123 更新时间:2023-12-02 02:51:00 26 4
gpt4 key购买 nike

我有这条 Camel 路线

    from("file:{{PATH_INPUT}}?charset=iso-8859-1&delete=true")
.process(new ProcessorName())
.pollEnrich().simple("${property.URI_FILE}", String.class).aggregationStrategy(new Estrategia()).timeout(10000).aggregateOnException(true)
.choice()
.when(simple("${property.result} == 'OK'"))
.to(URI_OUTPUT)
.endChoice();

该路由从 PATH_INPUT 获取一个文件,将其与文件 URI_FILE 进行比较(我在 ProccessorName() 中生成 URI_FILE 属性),如果 URI_FILE 正文包含特定数据,则结果为“OK”并将其发送到 URI_OUTPUT (activeMQ )。

这工作正常,但后来我注意到这生成了很多等待线程,每个交换一个。

enter image description here

我不知道为什么会发生这种情况。我尝试过使用 ConsumerTemplate,结果是相同的。

最佳答案

是的,如果您为每个轮询的端点生成唯一的 URI,则这是预期的情况。我假设您生成了一个在该 URI 中指定的动态文件名,并且您看到每个端点都有一个线程?

我已经记录了一张票证,以便将来更容易做到这一点 https://issues.apache.org/jira/browse/CAMEL-11250

如果您只想将消息正文设置为指定文件名,那么最快、最简单的方法是使用 setBody 作为 java.io.File 类型:

.setBody(simple("${property.URI_FILE}", java.io.File))

关于java - Camel : PollEnrich generating a lot of Timed Waiting threads,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43849165/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com