我有几台服务器运行相同的代码,但每台服务器都处理特定的消息(它们按地理区域分布,必须处理与其区域相关的所有消息)
我想使用单个队列和消息选择器来过滤不同的消息。
问题是:如何编写Java代码和部署计划,以便动态配置选择器,基于配置文件,应用服务器的配置(Geronimo 2.2)
目标是在所有服务器上部署相同的 EAR。
谢谢你。
我有几台服务器运行相同的代码,但每台服务器都处理特定的消息(它们按地理区域分布,必须处理与其区域相关的所有消息)
我想使用单个队列和消息选择器来过滤不同的消息。
问题是:如何编写Java代码和部署计划,以便动态配置选择器,基于配置文件,应用服务器的配置(Geronimo 2.2)
目标是在所有服务器上部署相同的 EAR。
谢谢你。
对于您想要实现的目标,Java 代码不需要不同,部署计划应该从一台服务器更改为另一台服务器。
要在所有服务器上部署相同的 EAR,我会这样处理:
openejb-jar.xml
为您想要的每个 MDB 配置编写不同的配置——每个都将具有相同的 MDB ( 已<enterprise-beans><message-driven>
定义,但具有不同的消息选择器。openejb-jar.xml
直接放在 EAR 文件内的单独目录中。geronimo-application.xml
的引用特定配置的<alt-dd>
元素来部署 EAR:<module>
<ejb>your_MDB.jar</ejb>
<alt-dd>config1/openejb-jar.xml</alt-dd>
</module>