gpt4 book ai didi

java - 如何在Camel中使用**直接**端点实现并行处理?

转载 作者:太空宇宙 更新时间:2023-11-04 06:24:50 29 4
gpt4 key购买 nike

下面的测试代码不起作用

from("direct:start").setExchangePattern(ExchangePattern.InOnly).threads(5).delay(2000).bean(MessageHeaderValidator.class);

尽管seda是替代方案,请参阅Camel seda document 。建议改用直接端点。

线程池

请注意,通过执行以下操作将线程池添加到 SEDA 端点:

from("seda:stageName").thread(5).process(...)

最终可能会出现两个 BlockQueue:一个来自 SEDA 端点,一个来自线程池的工作队列,这可能不是您想要的。相反,您可能希望使用线程池配置 Direct 端点,它可以同步和异步处理消息。例如:

from("direct:stageName").thread(5).process(...) 

您还可以直接配置在 SEDA 端点上处理消息的线程数使用并发消费者选项。

最佳答案

对于并行处理,请使用 Camel 的 SEDA 组件和 concurrentConsumers 选项:

from("seda:stageName?concurrentConsumers=5")
.process(...);

关于java - 如何在Camel中使用**直接**端点实现并行处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26926805/

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