7.2. 资源限制和策略配置属性

与 AMQ 6 一样,在 AMQ Broker 7 中,您可以添加资源限制和策略来控制代理如何处理消息发送方式和时间、应进行的发送尝试数以及消息应该过期的时间。但是,用于定义这些资源限制和策略的配置属性在 AMQ Broker 7 中有所不同。

本节将 AMQ 6 中的 <policyEntry> 配置属性与 AMQ Broker 7 中的等同的 <address-setting> 属性进行比较。如需 AMQ Broker 7 中每个配置属性的完整详情,请参阅 配置 AMQ Broker 中的地址设置配置元素

7.2.1. 队列管理配置属性

下表将 AMQ 6 中的队列管理配置属性与 AMQ Broker 7 中的等效属性进行了比较:

要设置…​在 AMQ 6 中在 AMQ Broker 7 中

内存限制

memoryLimit

为目的地设置内存限值 默认值为 none

<max-size-bytes>

设置 地址 的内存限值。默认值为 -1 (无限制)。

队列中按优先级排列的消息顺序

prioritizedMessages

这默认是禁用的,这意味着消息在消费者(而不是代理)上具有优先权,因此会根据使用者消息的优先级排序。

消息按照队列中的优先级自动排序。

代理应扫描已过期信息的频率

expiredMessagesPeriod

<message-expiry-scan-period>

默认值为 30000 ms。

代理是否应该删除在一定时间段内处于非活跃状态的目的地

gcInactiveDestinations

默认值为 false

无等效.但是,对于自动创建的队列,您可以将队列设置为在最后一个消费者分离时自动删除。如需更多信息,请参阅配置 AMQ Broker 中的自动创建和删除地址和队列

不活跃超时

inactiveTimeoutBeforeGC

默认为 60 秒。

无等效.但是,对于自动创建的队列,您可以将队列设置为在最后一个消费者分离时自动删除。如需更多信息,请参阅配置 AMQ Broker 中自动创建和删除队列及地址

代理在从队列中分配时是否应使用单独的线程

optimizedDispatch

默认值为 false

无法为地址或队列设置此设置。但是,您可以从邮件到达的传入连接中控制它。在接收器或连接器上使用 directDeliver 属性来控制消息是否应该传送到它所到达的同一线程中。如需更多信息,请参阅 配置 AMQ Broker 中的 Acceptor 和 Connector 配置参数