我们正在将一些应用程序从WAS完整个人资料迁移到WAS Liberty个人资料
某些应用程序具有MDB,并且需要连接到MQ的JMS激活规范定义
为了在集群中强制执行严格的FIFO消息排序,我们在这些激活规范上将"WAS_EndpointInitialState"
属性设置为"INACTIVE"
,以告知WAS完整配置文件在启动时不启动激活规范。当群集启动时,我们仅在一台服务器上启动(即"恢复")激活
问:如何使用Liberty(v16.0.x)实现这一目标?
我在"properties.wmqJms"
节中没有看到等效参数
感谢
答案 0 :(得分:2)
Liberty没有激活规范的等效参数/功能。 您可以在此处打开增强请求: https://www.ibm.com/developerworks/rfe/?PROD_ID=544
如果在此期间它有所帮助,模拟功能的粗略方法是在注释掉jmsActivationSpec元素的情况下启动服务器,并根据需要激活配置更新以取消注释。
答案 1 :(得分:0)
遗憾的是(使用v16.0.0.3和当前测试版),由于Liberty配置文件中的功能严重缺乏,因此无法在生产中部署具有 MDB 的应用程序(JMS激活)。
使用jmsActivationSpec
+ properties.wmqJms
节时,这是不可能的:
inactive
状态启动激活。因此,当在群集(或集合或其他形式的群集)中部署时,无法在Q上强制执行FIFO范例。这些已在以下RFE中捕获:
对于我们来说,出于这些原因,明确禁止迁移到WebSphere Liberty配置文件
答案 2 :(得分:0)
这对于OP来说为时已晚,但是如果有人来这里寻找当前答案,则为时已晚。
Liberty / Open Liberty现在(自18.0.0.1起)提供了这样的功能,您可以通过 autoStart 属性启用该功能,例如:
<jmsActivationSpec autoStart="false" id="myJMSActSpec"/>
有关如何使用EndpointControl MBean和/或server resume
CLI命令开始将消息传递到服务器的方式,请参见here。