首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ApacheCamel: readLock =幂等vs readLock =重命名

ApacheCamel: readLock =幂等vs readLock =重命名
EN

Stack Overflow用户
提问于 2017-11-23 13:20:14
回答 1查看 1.2K关注 0票数 0

在我的应用程序中,我们有多个节点来共享文件系统。因此,在这种情况下,锁定机制需要idempotentRepository。

问题: Apache中的为什么"readLock =幂等“只适用于文件组件,而不适用于FTP?

readLock:幂等不兼容FTP,它只兼容文件组件。

代码语言:javascript
复制
<from uri="ftp://XXX:xxxxxx@localhost/var/opt/irs/message?delete=true&amp;readLock=idempotent&amp;idempotentRepository=#idempotentRepo&amp;readLockLoggingLevel=WARN&amp;shuffle=true" />

readLock:重命名与兼容

我做到了这一点

代码语言:javascript
复制
<from uri="ftp://XXX:xxxxxx@localhost/var/opt/irs/message?delete=true&amp;readLock=rename&amp;idempotentRepository=#idempotentRepo&amp;readLockLoggingLevel=WARN&amp;shuffle=true" />

我想知道背后的原因。

有人能解释一下背后的原因吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-23 16:53:32

正如您在文档这里中清楚看到的那样。它说

幂等函数-- Camel 2.16 (仅用于文件组件)用于使用idempotentRepository作为读锁.

您可以通过这样的操作来实现ftp的这一点。

代码语言:javascript
复制
 from("ftps://{{ftp.username}}@{{ftp.host}}/{{ftp.importDirectory}}?password="
            + "{{ftp.password}}&readLock=changed&move={{ftp.processed}}"
            + "&moveFailed={{ftp.failed}}"
            + "&securityProtocol=SSL&execProt=P&execPbsz=0&passiveMode=true")
           .idempotentConsumer(header("camelFileAbsolutePath"),
                MemoryIdempotentRepository.memoryIdempotentRepository(200))
            .to("bean:ftpConsumer?method=consumeMethod")
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47456552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档