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

如何在CAMEL中实现带有**Direct**endpoint的并行处理?

宦文柏
2023-03-14

下面测试代码不起作用

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

虽然seda是替代方案,但参考骆驼seda文档。建议改为使用直接终结点。

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

共有1个答案

潘灵均
2023-03-14

对于并行处理,可以使用Camel的SEDA组件和ConcurrentConsumers选项:

from("seda:stageName?concurrentConsumers=5")
    .process(...);
 类似资料:
  • 我添加了io。quarkus:quarkus骆驼核心到我的应用程序,但直接启动在本机映像中不起作用。如果我在JVM中运行quarkus,那么它可以工作。 Github中有一些项目(https://github.com/apache/camel-quarkus/tree/master/extensions/direct)这在某种程度上表明,未来有一个扩展计划,但它没有得到官方支持。 如何使其以最小的

  • 我正在构建一个路由slip bean,除了动态路由之外,我还想向收件人列表的endpoint发送一个参数。 我希望使用类似“direct:test?param=value”的东西,其中param和value在路由单POJO中设置 根据我对直接组件的理解,一个单一的“直接:测试”endpoint将接收所有路由交换,但是我需要一种从路由条中读取参数发送的方法 如何将此参数用于接收交换的endpoint

  • MaxMesssAgesPerPoll 线程(10) 聚合器 但是我在这里与聚合器没有任何关系,只需要从一个远程位置处理每个文件,处理它,然后将它们放在另一个远程位置。

  • 我是阿帕奇骆驼队的新手。我试图将一个交换从java方法发送到一个路由,但它给了我“由:org.apache.camel.component.direct.DirectConsumerNotAvailableException:endpoint上没有可用的消费者”错误。我想知道这个错误到底是什么,我们什么时候得到这个?

  • 本文向大家介绍如何在TestNG中实现并行执行?,包括了如何在TestNG中实现并行执行?的使用技巧和注意事项,需要的朋友参考一下 我们可以借助TestNG实现并行执行。TestNG中有一个并行属性,用于此实现。TestNG中的并行执行与另一个称为thread-count的属性相关联。 parallel属性可以具有以下列出的值- 方法。 类。 执行个体 测验 示例 Testng xml文件。 对于

  • 我正在为http请求编写一个通用的路由。而且endpoint不是静态值。路由代码: 提前谢了。

  • 问题内容: 我正在编写一个POC来处理大约10亿行以上的超大文本文件,并为此进行了尝试。 但是,当运行此命令时,会出现此错误; 紧急:单个文件或套接字上的并发操作过多(最大1048575) 我还没有在网上找到任何可以解决此特定错误的信息。我不确定这是否是文件描述符问题,错误中列出的最大值远高于我的限制500,000。 做这个的最好方式是什么? 不太明显,它是我在处理数据时将调用的实际功能的替代品。

  • 我们有一个服务调用,它返回一个id列表,我们用它调用另一个服务,该服务一次只接受一个id,因此我们使用的是驼峰分割器,并行处理转换为。现在,我们通过seda调用该服务,因此可以设置超时。这将导致并行处理不再是并行的问题,因为seda默认只有1个并发使用者在处理它。 选项: < li >放一个?seda上的concurrent consumers = x < li >使用direct而不是seda。