1

假设您有这条路线:

from("direct:processOrders")
.process(new MultipleOrdersProcessor())
.to("direct:done")

MultipleOrdersProcessor 循环遍历订单并做“事情”

使用拆分器并使用 SingleOrderProcessor 而不是 MultipleOrdersProcessor 有什么好处?

4

2 回答 2

3

我能想到两个好处

  1. 如果其中一个“订单”失败,如果它们被拆分为多条消息,则不一定会使您的整个交换失败。
  2. 使用自动化工具对 SingleOrderProcessor 函数进行单元测试可能更容易。
于 2013-03-26T18:18:55.687 回答
2

一个直接的好处是能够并行处理订单,前提是用例适合并行处理。在 MultipleOrdersProcessor 的情况下,并行处理需要自定义实现。

于 2013-03-27T02:08:06.007 回答