12.2. 配置大消息


12.2.1. 配置大型消息位置

您可以使用下面的管理 CLI 命令读取大消息目录的配置。也包含 输出以突出显示默认配置。

/subsystem=messaging-activemq/server=default/path=large-messages-directory:read-resource
{
    "outcome" => "success",
    "result" => {
        "path" => "activemq/largemessages",
        "relative-to" => "jboss.server.data.dir"
    }
}
Copy to Clipboard Toggle word wrap
重要

为获得最佳性能,建议将大型消息目录存储在来自消息日志或分页目录的不同物理卷上。

large-messages-directory 配置元素用于指定在文件系统中存储大型消息的位置。请注意,默认情况下路径为 activemq/largemessages。您可以使用以下管理 CLI 命令更改路径位置:

/subsystem=messaging-activemq/server=default/path=large-messages-directory:write-attribute(name=path,value=PATH_LOCATION)
Copy to Clipboard Toggle word wrap

另请注意上面输出中的 relative-to 属性。使用 relative-to 时,path 属性的值被视为 relative-to 指定的文件路径的相对。默认情况下,此值为 JBoss EAP 属性 jboss.server.data.dir。对于单机服务器,jboss.server.data.dir 位于 EAP_HOME/standalone/data。对于域,每一服务器自己的 serverX/data/activemq 目录位于 EAP_HOME/domain/servers 下。您可以使用以下管理 CLI 命令更改 relative-to 的值:

/subsystem=messaging-activemq/server=default/path=large-messages-directory:write-attribute(name=relative-to,value=RELATIVE_LOCATION)
Copy to Clipboard Toggle word wrap
配置大型消息大小

使用管理 CLI 查看大型消息的当前配置。请注意,此配置是 connection-factory 元素的一部分。例如,要读取包含的默认 RemoteConnectionFactory 的当前配置,请使用以下命令:

/subsystem=messaging-activemq/server=default/connection-factory=RemoteConnectionFactory:read-attribute(name=min-large-message-size)
Copy to Clipboard Toggle word wrap

使用类似语法设置 属性。

/subsystem=messaging-activemq/server=default/connection-factory=RemoteConnectionFactory:write-attribute(name=min-large-message-size,value=NEW_MIN_SIZE)
Copy to Clipboard Toggle word wrap
注意

属性 min-large-message-size 的值应当以字节为单位。

配置大型消息压缩

您可以选择压缩大型消息,实现快速、高效的传输。所有压缩/解压缩操作都在客户端端处理。如果压缩的消息小于 min-large-message 大小,它将作为常规消息发送到服务器。使用管理 CLI,将 boolean 属性 compress-large-messages 设置为 true,以压缩大型消息。

/subsystem=messaging-activemq/server=default/connection-factory=RemoteConnectionFactory:write-attribute(name=compress-large-messages,value=true)
Copy to Clipboard Toggle word wrap

12.2.2. 使用核心 API 配置大型消息大小

如果您在客户端使用核心 API,则需要使用 setMinLargeMessageSize 方法来指定大型信息的最小大小。默认情况下,大消息(min-large-message-size)的最小大小设置为 100KB。

ServerLocator locator = ActiveMQClient.createServerLocatorWithoutHA(new TransportConfiguration(InVMConnectorFactory.class.getName()))

locator.setMinLargeMessageSize(25 * 1024);

ClientSessionFactory factory = ActiveMQClient.createClientSessionFactory();
Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat