7.2.4. 较慢的使用者处理配置属性

与 AMQ 6 一样,AMQ Broker 7 可以检测到缓慢的使用者,并自动停止持续慢速的用户。这在 AMQ 6 中默认启用,但在 AMQ Broker 7 中默认禁用。

代理确定消费者"低"的方式也不同。在 AMQ Broker 7 中,根据使用者已确认的消息数量,消费者被视为很慢。在 AMQ 6 中,消费者被认为基于 prefh 缓冲区的全度而减慢(如果缓冲区始终满,则客户端可能太慢地消耗消息)。

下表将 AMQ 6 中较慢的使用者处理配置属性与 AMQ Broker 7 中的等效属性进行比较:

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

消费者在被中止前可被视为速度慢的次数

maxSlowCount

默认值为 -1(无限制)。

无等效.您可以使用其他较慢的消费者处理属性来控制速度较慢的消费者。

消费者在被中止前可以持续慢慢的时间

maxSlowDuration

默认值为 30000 ms。

<slow-consumer-threshold>

在 AMQ Broker 7 中,这是消费者被视为"低"(每秒在消息中衡量)前的最低消息消耗率。默认值为 -1(无阈值)。

代理在对慢速消费者进行另一次检查前应等待的时间

checkPeriod

默认值为 30000 ms。

<slow-consumer-check-period>

在 AMQ Broker 7 中,这以秒为单位计算。默认值为 5。

代理是否应该与速度慢的消费者关闭连接

abortConnection

默认值为 false

无等效.在 AMQ Broker 7 中,当一个较慢的消费者被中止时,连接也会关闭。

当检测到较慢的使用者时,要应用的策略。

无等效.

<slow-consumer-policy>

默认值为 NOTIFY,它会向应用程序发送 CONSUMER_SLOW 管理通知。

您还可以使用 KILL 策略关闭消费者的连接。但是,这将影响使用该连接的任何其他客户端线程。

相关信息

  • 有关如何处理慢速使用者的更多信息,请参阅 配置 AMQ Broker 中的 处理 Slow Consumers