grails - Jboss集群中的Apache Camel

标签 grails cluster-computing apache-camel

我是Apache Camel的新手,我计划在Grails应用程序中实施文件轮询器,以将其部署在两个节点的Jboss集群中。

我打算使用Grails路由插件来包含Camel。

问题是,由于它是一个集群环境,我们将有两个正确的Camel Context
(每个节点一个)?如果是这样,那么两者将具有相同的路线。当源文件夹中存在文件时,两个 Camel 上下文都将尝试处理该文件吗?我不希望两个节点都尝试处理文件并导致失败的情况。我只希望仅通过一个 Camel 上下文和路由来处理文件。我是否需要做任何特殊的事情来处理这种情况,否则 Camel 有能力在集群中工作?

最佳答案

您可以将 Camel 上下文作为jboss集群单例运行。

======================================

抱歉,正在手机上回应。这是更多信息。

这并不是说您不能在集群中的每个节点上都运行 Camel 上下文(可以),但是如果所有节点都在观察相同的文件系统,并且您不希望它们为谁来处理放置在目标中的文件而争论不休目录,最好的选择是一次只运行一个上下文实例。

由于您已经在运行jboss集群[我假设],所以HA Singleton模型似乎非常适合您。它将仅在一个实例上运行 Camel 上下文,但是如果该实例失败,则另一个节点将启动该上下文,因此您总是有机会始终运行上下文。

无论如何要看的东西。或者,您可以为集群中的每个节点指定不同的文件掩码,因此每个上下文将仅拾取与指定文件掩码匹配的文件。

关于grails - Jboss集群中的Apache Camel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13221743/

相关文章:

redis - 如何动态设置 HAProxy IP 配置?

emacs - 自动备份服务器上的 emacs 文件编辑

parallel-processing - 使用 ActiveMQ 并行处理多条消息

java - Apache Camel 中的模拟输入队列

grails - 单选<g :select> is producing more than one "selected" item by default

grails - 使设计适应 Grails

parallel-processing - 使用网络计算机的matlab并行处理

grails - 如何将许多变量发送到 Grails 中的 Controller

grails - 使用复合 key 进行Grails验证

java - 我可以在 Apache Camel 中拥有多个回复者吗