4.9. 消息传递服务器配置变化


在 JBoss EAP 7 中,ActiveMQ Artemis 取代了 HornetQ 作为 JMS 支持提供程序。这部分论述了如何迁移配置和相关消息传递数据。

4.9.1. 消息传递子系统服务器配置变化

EAP_HOME/modules/system/layer s/base/ 中的 org.jboss.as.mess aging 模块扩展已被 org.wildfly.extension.messaging-activemq 扩展模块取代。

The urn:jboss:domain:messaging:3.0 子系统配置命名空间已被 the urn:jboss:domain:messaging-activemq:4.0 命名空间替代。

管理模型

大多数情况下,尽量使元素和属性名称与之前发行版中使用的名称相似。下表列出了其中一些更改:

Expand
表 4.3. 映射消息传递属性
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
Copy to Clipboard Toggle word wrap

在执行 迁移 操作之前,您可以调用 describe-migration 操作,以检查要执行的管理操作列表,以便从现有 JBoss EAP 6 消息传递 子系统配置迁移到 JBoss EAP 7 服务器上的 messaging-activemq 子系统。

/subsystem=messaging:describe-migration
Copy to Clipboard Toggle word wrap

迁移和 描述迁移 操作还会显示无法自动迁移的资源或属性的 migration-warnings 列表。

消息传递子系统迁移和提升兼容性

describe-migrationmigration 操作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)
Copy to Clipboard Toggle word wrap

如果布尔值参数 add-legacy-entries 设为 true,delay -activemq 子系统将创建 legacy-connection-factory 资源,并将 legacy-entries 添加到 jms-queuejms-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 配置,作为其执行的一部分。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat