首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Apache Camel Idempotent Consumer for file

Apache Camel Idempotent Consumer for file
EN

Stack Overflow用户
提问于 2020-07-10 17:24:48
回答 1查看 188关注 0票数 0

我有一台物理服务器,上面运行着两个Apache Camel实例。两者都包含相同的集成工件。任务是将服务器文件系统中的文件与由cron作业触发的Apache Camel的文件组件集成。文件处理应该只发生一次。因此,我对同一台服务器上的Jdbc存储库使用幂等模式。

一般来说,它工作得很好。但有时,在少数情况下,两个实例都会运行并读取文件,因此文件会被处理两次。在JDBC数据库中,键也插入两次(甚至创建的时间戳也几乎相同;只是毫秒的第三位不同)。

这就是我使用文件消费者的方式:

代码语言:javascript
复制
<from uri="file:{{property.file.directory}}?scheduler=quartz2
                    &;scheduler.cron={{property.file.cronjob}}?
                    &idempotent=true
                    &readLock=idempotent
                    &idempotentKey=${file:name}-${file:size}-${date:file:yyyy-MM}
                    &idempotentRepository=#idempotentRepository"/>

有人知道文件只准备好一次的原因吗??

问候你,伊恩

EN

回答 1

Stack Overflow用户

发布于 2020-07-12 13:35:43

您可以在您的场景中使用集群Quartz。http://www.quartz-scheduler.org/documentation/quartz-1.8.6/configuration/ConfigJDBCJobStoreClustering.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62831202

复制
相关文章

相似问题

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