我有一对骆驼路由,它们从两个不同的队列接收消息,它们的过程由同一个bean执行(通过引用)。这是通过Spring&Camel XML完成的。
配置如下:
<route id "route-1" xmlns="http://camel.apache.org/schema/spring">
<from uri="queue:IN1" />
<process ref = "myProcessBean />
</route>
<route id "route-2" xmlns="http://camel.apache.org/schema/spring">
<from uri="queue:IN2" />
<process ref = "myProcessBean />
</route>
如果我同时在IN1和IN2上收到消息,这些消息是否会并行处理?
答案 0 :(得分:1)
是的。处理器是单例bean,可以并行处理。只需确保它不存储任何状态信息,这实际上是建议的最佳实践之一(请参见下面的链接)。
https://www.3riverdev.com/apache-camel-processors-should-never-be-stateful/