首页 > 解决方案 > Apache骆驼集并行消费

问题描述

我有这条路线:

@Component
public class MyRoute implements RouteBuilder {

 @Override
 public void configure() {
        from(topic)
        .routeId(routeId)
        .process(exchange -> {
                // do something
        }
        .process(exchange -> {
                // do something
        }
        .to(anotherTopic);
    }

}

我想并行而不是按顺序处理来自主题的更多消息。

消息从 kafka 队列中消费,并且必须是事务性的。

我能怎么做?

标签: javaparallel-processingapache-camel

解决方案


处理这种情况的一种常见的通用方法是拆分您的路线并使用SEDA Component及其concurrentConsumers选项。

根据您的消息,Split EIP及其parallelProcessing()功能也可以工作。

编辑:我发现骆驼行动书的第 13 章可在线免费参考。这个链接也可能有帮助


推荐阅读