即使数据存在,Camel readLockMinLength = 0也会创建一个0长度的文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了即使数据存在,Camel readLockMinLength = 0也会创建一个0长度的文件相关的知识,希望对你有一定的参考价值。
我尝试通过设置readLockMinLength=0
来修复零长度文件。正在处理所有Good,零字节文件。
现在问题是我有非常大的文件(大约2 GB)。在我的目的地,我收到两个文件:
- 包含数据的实际文件
- 零字节的实际文件
From Route include = ..&delay = 20000&readLockCheckInterval = 20000&readLockTimeout = 60000&readLock = changed&readLockMinLength = 0&readLockLoggingLevel = OFF&delete = true“
我的文件名有时间戳。我不确定它为什么创建额外的零字节文件,但当我删除readLockMinLength = 0时。它永远不会创建零字节文件。
您的轮询频率为20秒,读锁定的检查间隔相同,读锁定超时为60秒。
多个目录轮询是否可能相互干扰?
您是否尝试将delay
提升到60秒以上,以便在当前轮询的任何读取锁定内容之后开始下一轮询?
编辑由于同一应用程序在4个节点上运行的新信息。
在Camel docs有一个警告,其中解释了财产readLock
:
警告:大多数读锁策略不适合在群集模式下使用。也就是说,您不能让多个使用者尝试在同一目录中读取同一文件。在这种情况下,读锁定将无法可靠地运行。
在这种情况下,我们只运行一个实例并使用监视程序来监视进程。如果进程终止,看门狗会自动重启它。
以上是关于即使数据存在,Camel readLockMinLength = 0也会创建一个0长度的文件的主要内容,如果未能解决你的问题,请参考以下文章
AIsing Programming Contest 2020 E - Camel Train
我可以在同一Camel上下文中的Camel Routes之间共享本地数据吗?