Apache Camel文件传输用于先前中断的进程

时间:2013-06-05 08:43:57

标签: file apache-camel interrupt resume

我有两个camel应用程序,他们的职责是从同一目录中读取文件,处理它们并将它们发送给db consumer。为此,我的端点是这样的:

file:/data/air?preMove=thread&readLock=fileLock &idempotent=true&idempotentRepository=#fileStore&include=AIROUTPUTCDR_(.*).AIR.gz&move=/data/air/success&moveFailed=error

正如您所见,应用程序根据过滤器从polldir轮询文件,在线程目录下移动它们以读取,读取文件并移动到成功文件夹。

但是通过这个流程,如果我杀死一个应用程序并再次启动它,那么正在处理的文件将不会被处理,因为它们位于线程文件夹下。

我的问题是,有没有办法恢复读取刚被中断的文件?

由于

1 个答案:

答案 0 :(得分:0)

否如果你在文件被预先移动的情况下对应用程序进行硬杀,那么你需要手动将这些文件从预移动移回源文件夹,这样就可以再次拾取它们