我们的设置:我们的生产是使用几个物理计算机(每台计算机运行多个JVM)的Apache Camel的多个实例(不同的JVM)。 我们的大多数Camel路由都是基于HTTP的(REST或SOAP),我们有一个网络组件处理http查询的负载平衡,因此它可以正常工作。 在文件端,共享文件夹是Linux NFS安装。每台物理计算机都安装了相同的共享文件夹。
我的问题:对于“新”模式,我们必须处理文件:有人会生成文件并将它们放在共享文件夹中,Apache Camel必须检测文件,对它们进行一些操作,然后重命名它们。 我们对该模式有两种用途,一种是处理单个文件,另一种是处理包含多个文件的文件夹。
我尝试过各种各样的东西,但我找不到一种可靠的方法来确保只有一个Apache Camel会使用该文件。
以下是我的一些尝试:
我没有想法,我担心没有有效的方法来同步Camels与我们的架构(并行对等体)一起工作。 有没有办法使用分布在不同Camels上的相同代码来模拟主/从架构?