4.9. 消息传递服务器配置变化
在 JBoss EAP 7 中,ActiveMQ Artemis 取代了 HornetQ 作为 JMS 支持提供程序。这部分论述了如何迁移配置和相关消息传递数据。
4.9.1. 消息传递子系统服务器配置变化 复制链接链接已复制到粘贴板!
EAP_HOME/modules/system/layer
模块扩展已被 s/base/ 中的 org.jboss.as.mess
agingorg.wildfly.extension.messaging-activemq
扩展模块取代。
The urn:jboss:domain:messaging:3.0
子系统配置命名空间已被 the urn:jboss:domain:messaging-activemq:4.0
命名空间替代。
管理模型
大多数情况下,尽量使元素和属性名称与之前发行版中使用的名称相似。下表列出了其中一些更改:
HornetQ 名称 | ActiveMQ 名称 |
---|---|
hornetq-server | server |
hornetq-serverType | serverType |
连接器 | 连接器 |
discovery-group-name | discovery-group |
新 messaging-activemq
子系统调用的管理操作已从 /subsystem=messaging/hornetq-server=
更改为 /subsystem=messaging-activemq/server=
。
您可以通过调用迁移操作,将现有的 JBoss EAP 6 消息传递子系统 配置
迁移到
JBoss EAP 7 服务器上的 messaging-activemq
子系统。
/subsystem=messaging:migrate
/subsystem=messaging:migrate
在执行 迁移
操作之前,您可以调用 describe-migration
操作,以检查要执行的管理操作列表,以便从现有 JBoss EAP 6 消息传递
子系统配置迁移到 JBoss EAP 7 服务器上的 messaging-activemq
子系统。
/subsystem=messaging:describe-migration
/subsystem=messaging:describe-migration
迁移和
描述迁移
操作还会显示无法自动迁移的资源或属性的 migration-warnings
列表。
消息传递子系统迁移和提升兼容性
describe-migration
和 migration 操作
为 messaging
子系统提供了额外的配置参数。如果您要将消息传递配置为允许旧版 JBoss EAP 6 客户端连接 JBoss EAP 7 服务器,您可以按照如下所示将布尔值 add-legacy-entries
参数添加到 describe-migration
或 迁移
操作:
/subsystem=messaging:describe-migration(add-legacy-entries=true) /subsystem=messaging:migrate(add-legacy-entries=true)
/subsystem=messaging:describe-migration(add-legacy-entries=true)
/subsystem=messaging:migrate(add-legacy-entries=true)
如果布尔值参数 add-legacy-entries
设为 true
,delay -activemq
子系统将创建 legacy-connection-factory
资源,并将 legacy-entries
添加到 jms-queue
和 jms-topic
资源。
如果布尔值参数 add-legacy-entries
设为 false
,则 messaging-activemq
子系统中不会创建传统资源,并且传统的 JMS 客户端将无法与 JBoss EAP 7 服务器通信。这是默认值。
有关正向和向后兼容性的更多信息,请参阅为 JBoss EAP 配置消息传递中的向后和提升 https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.3/html-single/configuring_messaging/#messaging_forward_and_backward_compatiblity 兼容性。
如需有关管理 CLI 迁移和 描述
操作的更多信息,请参阅 管理 CLI 迁移操作。
迁移
forward-when-no-sumers Attribute 的行为变化
JBoss EAP 7 中的 forward-when-no-consumers 属性的行为
已经改变。
在 JBoss EAP 6 中,当 forward-when-no- Consumers 设置为
false
时,当集群中没有消费者时,消息会被重新分发到群集中的所有节点。
JBoss EAP 7 中已更改此行为。如果 forward-when-no-consumers
设为 false
,且集群中没有使用者,则信息不会被重新分发。相反,它们会被保留在发送到的原始节点上。
默认集群负载均衡策略更改
JBoss EAP 7 中的默认群集负载平衡策略已更改。
在 JBoss EAP 6 中,默认的群集负载平衡策略类似于 STRICT
,后者类似于将旧的 forward-when-no-consumers
参数设置为 true
。在 JBoss EAP 7 中,默认值现在是 ON_DEMAND
,它类似于将旧的 forward-when-no-consumers
参数设置为 false
。有关这些设置的更多信息,请参阅为 JBoss EAP 配置消息传递 https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.3/html-single/configuring_messaging/#cluster_connection_attributes 中的群集连接属性。
消息传递子系统 XML 配置
XML 配置已根据新的 messaging-activemq 子系统进行了
显著更改,现在提供的 XML 架构与其他 JBoss EAP 子系统更加一致。
强烈建议您不要尝试修改 JBoss EAP 消息 子系统
XML 配置,以符合新的 messaging-activemq
子系统。相反,可调用传统的子系统 迁移
操作。此操作将编写新的 messaging-activemq
子系统的 XML 配置,作为其执行的一部分。