7.9. 其他调整选项
本节介绍 JBoss EAP 消息传递中可以调整的其他位置。
使用异步发送确认。
如果您需要发送非事务处理的消息,且不需要保证在调用
send ()返回时已达到服务器,请不要将它们设置为发送阻止。反之,使用异步发送确认项在单独的流中返回您的发送确认。但是,如果服务器崩溃,一些信息可能会丢失。使用
pre-acknowledge模式。使用
pre-acknowledge模式时,消息会在发送到客户端之前被确认。这可减少有线路上的确认流量量。但是,如果客户端崩溃,如果客户端重新连接,则不会更新消息。禁用安全性。
通过将
security-enabled属性设置为 false,在禁用安全性时,性能会很小。禁用持久性。
您可以通过将
persistence-enabled设置为false来完全关闭消息持久性。同步事务不正常。
将
journal-sync-transactional设置为false可提供更好的事务持久性性能,但牺牲在失败时丢失事务的可能性。同步非事务处理。
将
journal-sync-non-transactional设置为false可提供更好的非事务处理性能,以牺牲失败时丢失的持久消息。发送消息非阻塞。
为了避免在发送的每个消息中等待网络往返,如果您使用 Jakarta Messaging 和 JNDI,将
block-on-durable-send和block-on-non-durable-send设置为false,或通过调用setBlockOnDurableSend ()和setBlockOnNonDurableSend ()方法直接在ServerLocator中设置。优化
consumer-window-size。如果您有非常快速的用户,您可以提高
consumer-window-size来有效地禁用消费者流控制。使用核心 API 而不是 Jakarta Messaging API。
Jakarta 消息传递操作必须在服务器处理它们之前转换为核心操作,从而比使用核心 API 的性能较低。在使用核心 API 时,尽量使用采用
SimpleString的方法。与java.lang.String不同,在将简单字符串写入有线之前不需要复制,因此如果您在调用之间重复使用实例,您可以避免一些不必要的复制。请注意,核心 API 无法移植到其他代理。SimpleString