Apache Camel 文件组件中的"idempotentRepository"选项与Idempotent Consumer处理器有什么区别?

3
文件组件的文档中,我看到我们可以通过指定idempotent选项来创建幂等读锁,如下所示:
from("file://inbox?idempotent=true&idempotentRepository=#messageIdRepo")
    .to("file:data/outbox");

但在Idempotent Consumers的文档中,我看到我们也可以像这样指定幂等处理器:

from("file:data/inbox?noop=true")
    .idempotentConsumer(header("CamelFileName"), someMessageIdRepository)
    .to("file:data/outbox");

这两种创建幂等消费者的方式之间是否存在显著的行为差异?
2个回答

5

这里有一个区别:第一个是在读取文件之前执行,第二个是在读取文件之后执行。这在从FTP消费者下载大文件时尤其重要。


-1

我认为这两种方式之间没有明显的行为差异,除非你使用idempotentConsumer来声明更多选项。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接