delivery-limit
和 和有什么区别x-delivery-limit
?
当我设置x-delivery-limit
as RabbitMQ 队列参数时,我可以看到它限制了我的消息重新排队尝试,正如我所料,但在官方 RabbitMQ 文档中我看到了delivery-limit
.
两者都是有效的设置。
区别在于这delivery-limit
是一个策略与x-delivery-limit
一个队列参数。
同样的差异也适用于其他 RabbitMQ 设置,例如
dead-letter-exchange
是策略 vsx-dead-letter-exchange
是队列参数queue-length
是策略 vsx-queue-length
是队列参数队列参数以 为前缀x-
,也称为x-argument
。代表x
“额外”或“扩展”,因为这些参数扩展了强制队列设置。强制队列设置例如durable
和exclusive
属性。x-arguments
是可选的队列设置。x-arguments
由客户端在声明队列时设置。
也就是说,要更改x-argument
,您需要重新部署客户端并重新声明队列。对于现有队列,x-argument
不允许更改 an ,否则将导致inequivalent arg error
关闭通道。
这就是政策派上用场的地方。它们具有以下优点:
x-queue-type
(例如从classic
队列到quorum
队列),因为队列进程及其存储消息的方式一旦创建就不能动态更改。但是,大多数队列设置(包括delivery-limit
)可以通过策略动态更改。一般来说,最好尽可能使用策略而不是队列参数,因为策略更灵活。
更多官方文档:https://www.rabbitmq.com/parameters.html#why-policies-exist
归档时间: |
|
查看次数: |
4961 次 |
最近记录: |