Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache camel 骆驼文件轮询,以最高优先级处理新可用的文件_Apache Camel - Fatal编程技术网

Apache camel 骆驼文件轮询,以最高优先级处理新可用的文件

Apache camel 骆驼文件轮询,以最高优先级处理新可用的文件,apache-camel,Apache Camel,我有以下行为: 当它监视文件所在的文件夹(比如输入文件夹)时,有一个端点。 我有一个参考上述端点的路径,并将文件复制到其他文件夹(例如输出文件夹) 当前的行为是假设如果输入文件夹中有200个文件,那么首先端点读取所有200个文件并将其发送到路由 因此,我的要求是: 假设到那时它复制了200个文件,如果有任何其他文件到达,它必须在200个文件复制之前具有优先权(可能基于我可以从我这边定义的某些参数) 如何设置这些新到达的优先级文件的优先级???您需要文件端点的排序选项: from(“file://

我有以下行为: 当它监视文件所在的文件夹(比如输入文件夹)时,有一个端点。 我有一个参考上述端点的路径,并将文件复制到其他文件夹(例如输出文件夹)

当前的行为是假设如果输入文件夹中有200个文件,那么首先端点读取所有200个文件并将其发送到路由

因此,我的要求是: 假设到那时它复制了200个文件,如果有任何其他文件到达,它必须在200个文件复制之前具有优先权(可能基于我可以从我这边定义的某些参数)


如何设置这些新到达的优先级文件的优先级???

您需要文件端点的
排序选项:
from(“file://somefolder?sortBy=file:modified”

有关详细信息,请访问

“使用SotBube排序”一节。

是的,它对文件进行排序,但是当文件已经被扫描和处理时,它将不会考虑优先权的文件。例:在起始点和结束点已经扫描并获取了50个文件。并且它(路由)正在处理和优先文件到达后。在这种情况下,将在50个文件完成处理后处理优先级文件。因此,基本上在这里,我希望在处理50个文件之前处理新到达的优先级文件。提前感谢。您可以将另一个端点用于高优先级文件,也可以更改maxMessagesPerPoll(其中maxMessagesPerPoll=false)以限制要轮询的邮件。停止已经开始的处理毫无意义,额外的文件夹检查操作也会降低性能。感谢您的解决方案。我只想知道一点:如果我们有两个端点,那么端点的执行优先级是多少?或者两者将并行运行?谢谢你的解决方案。我只想知道几点:如果我们有两个端点,那么端点的执行优先级是多少?或者两者将并行运行?如果我们使用quengemaxmessagesperpoll=false并限制要轮询的消息,那么性能会下降吗?什么是内存消耗?是的,并行。拥有两个端点会快得多。