第 36 章 其他调整选项


本节介绍 JBoss EAP 消息传递中可以调优的其他位置。

  • 使用异步发送确认.

    如果您需要发送非事务的持久化消息,且不需要保证它们已在 调用 send() 返回时到达服务器,请不要将它们设置为阻止发送。相反,应使用异步发送确认在单独的流中获取您的发送确认。但是,在服务器崩溃时,一些消息可能会丢失。

  • 使用 预确认模式

    使用 预确认模式 时,会在消息发送到客户端之前进行确认。这可减少线路上的确认流量量。但是,如果该客户端崩溃,如果客户端重新连接,则不会重新传送消息。

  • 禁用安全.

    当您通过将 security-enabled 属性设置为 false 来禁用安全性时,性能会很小提高。

  • 禁用持久性。

    您可以通过将 persistence-enabled 设置为 false 来完全关闭消息持久性。

  • 轻松同步事务.

    journal-sync-transactional 设置为 false 可提供更好的事务持久性性能,牺牲了在故障时丢失事务的可能性。

  • 以非事务方式同步.

    journal-sync-non-transactional 设置为 false 可提供更好的非事务持久性能,但会牺牲在故障时丢失持久消息的可能性。

  • 发送消息非阻塞.

    为避免等待发送的每一条消息的网络往返,如果您 使用 JMS 和 JNDI,请调用 setBlockOnDur ableSend ()和 setBlockOnNon -durableSend()方法,将 block-on-durable-send 和 block-on-dururable-send-s end 和 setBlockOnNonDurableSend()方法 直接设置在 ServerLocator 上。

  • 优化 consumer-window-size

    如果您的消费者速度非常快,您可以增大使用者 -窗口大小 以有效地禁用消费者流控制。

  • 使用核心 API 而不是 JMS API。

    JMS 操作必须转换为核心操作,然后服务器才能处理它们,从而比您使用核心 API 时性能更低。使用核心 API 时,请尝试使用尽可能使用 SimpleString 的方法。SimpleStringjava.lang.String 不同,在写入到线路之前不需要复制;因此,如果您在调用之间重复使用 SimpleString 实例,您可以避免一些不必要的复制。请注意,核心 API 无法移植到其他代理。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat