SpringCloud RabbitMQ消费者Properties

2023-11-29 15:54 更新

以下属性仅适用于Rabbit使用者,并且必须以spring.cloud.stream.rabbit.bindings.<channelName>.consumer.为前缀。

确认模式

确认模式。

默认值:AUTO

autoBindDlq

是否自动声明DLQ并将其绑定到绑定器DLX。

默认值:false

bindingRoutingKey

用于将队列绑定到交换机的路由密钥(如果bindQueuetrue)。对于分区的目的地,附加了-<instanceIndex>

默认值:#

bindQueue

是否将队列绑定到目标交换机。如果您已经设置了自己的基础结构并且先前已创建并绑定了队列,则将其设置为false

默认值:true

ConsumerTagPrefix

用于创建消费者标签;将被附加在#n之后,其中对于每个创建的使用者,n递增。例如:${spring.application.name}-${spring.cloud.stream.bindings.input.group}-${spring.cloud.stream.instance-index}

默认值:无-经纪人将生成随机的消费者标签。

deadLetterQueueName

DLQ的名称

默认值:prefix+destination.dlq

deadLetterExchange

分配给队列的DLX。仅当autoBindDlqtrue时才相关。

默认值:“ prefix + DLX”

deadLetterExchangeType

分配给队列的DLX的类型。仅当autoBindDlqtrue时才相关。

默认值:“直接”

deadLetterRoutingKey

分配给队列的死信路由键。仅当autoBindDlqtrue时才相关。

默认值:destination

声明Dlx

是否声明目的地交换死信。仅当autoBindDlqtrue时才相关。如果您有预配置的DLX,请设置为false

默认值:true

声明交换

是否声明目的地交换。

默认值:true

延迟交易

是否将交换声明为Delayed Message Exchange需要代理上的延迟消息交换插件。x-delayed-type参数设置为exchangeType

默认值:false

dlqDeadLetterExchange

如果声明了DLQ,则分配给该队列的DLX。

默认值:none

dlqDeadLetterRoutingKey

如果声明了DLQ,则为该队列分配一个死信路由密钥。

默认值:none

dlqExpires

删除未使用的死信队列的时间(以毫秒为单位)。

默认值:no expiration

dlqLazy

x-queue-mode=lazy参数声明死信队列。请参阅惰性队列考虑使用策略而不是此设置,因为使用策略允许更改设置而不删除队列。

默认值:false

dlqMaxLength

死信队列中的最大消息数。

默认值:no limit

dlqMaxLengthBytes

所有消息中的死信队列中的最大总字节数。

默认值:no limit

dlqMaxPriority

死信队列中消息的最大优先级(0-255)。

默认值:none

dlqOverflow行为

超过dlqMaxLengthdlqMaxLengthBytes时应采取的行动;当前为drop-headreject-publish,但请参考RabbitMQ文档。

默认值:none

dlqTtl

声明时应用于死信队列的默认生存时间(以毫秒为单位)。

默认值:no limit

持久订阅

订阅是否应持久。仅当还设置了group时才有效。

默认值:true

exchangeAutoDelete

如果declareExchange为true,则是否应自动删除交换(即在删除最后一个队列之后将其删除)。

默认值:true

耐用

如果declareExchange为真,则该交换是否应该持久(即,在代理重新启动后仍然存在)。

默认值:true

exchangeType

交换类型:非分区目的地为directfanouttopic,分区目的地为directtopic

默认值:topic

独家

是否创建独家消费者。当为true时,并发应为1。通常在需要严格订购但使热备用实例在发生故障后接管时使用。请参阅recoveryInterval,该文件控制备用实例尝试使用的频率。

默认值:false

过期

删除未使用的队列的时间(以毫秒为单位)。

默认值:no expiration

failedDeclarationRetryInterval

缺少队列的尝试之间的间隔(以毫秒为单位)。

默认值:5000

headerPatterns

从入站邮件映射标头的模式。

默认值:['*'](所有标题)。

使用x-queue-mode=lazy参数声明队列。请参阅惰性队列考虑使用策略而不是此设置,因为使用策略允许更改设置而不删除队列。

默认值:false

maxConcurrency

最大消费者数。

默认值:1

最长长度

队列中的最大消息数。

默认值:no limit

maxLengthBytes

来自所有消息的队列中的最大总字节数。

默认值:no limit

maxPriority

队列中消息的最大优先级(0-255)。

默认值:none

missingQueuesFatal

当找不到队列时,是否将条件视为致命并停止侦听器容器。默认值为false,以便容器继续尝试从队列中使用数据,例如,在使用群集且承载非HA队列的节点关闭时。

默认值:false

溢出行为

超过maxLengthmaxLengthBytes时应采取的行动;当前为drop-headreject-publish,但请参考RabbitMQ文档。

默认值:none

预取

预取计数。

默认值:1

字首

要添加到destination和队列名称的前缀。

默认值:“”。

queueDeclarationRetries

缺少队列时重试消耗的次数。仅当missingQueuesFataltrue时相关。否则,容器将无限期地重试。

默认值:3

queueNameGroupOnly

为true时,从名称等于group的队列中使用。否则,队列名称为destination.group例如,在使用Spring Cloud Stream从现有RabbitMQ队列中消费时,这很有用。

默认值:false。

recoveryInterval

连接恢复尝试之间的时间间隔(以毫秒为单位)。

默认值:5000

重新排队

禁用重试或republishToDlqfalse时是否应该重新排定传送失败。

默认值:false

republishDeliveryMode

republishToDlqtrue时,指定重新发布邮件的传递方式。

默认值:DeliveryMode.PERSISTENT

republishToDlq

默认情况下,拒绝重试后失败的消息将被拒绝。如果配置了死信队列(DLQ),则RabbitMQ将失败的消息(未更改)路由到DLQ。如果设置为true,则绑定程序将使用其他标头将失败的消息重新发布到DLQ,包括异常消息和来自最终失败原因的堆栈跟踪。

默认值:false

交易的

是否使用交易渠道。

默认值:false

ttl

声明时应用于队列的默认生存时间(以毫秒为单位)。

默认值:no limit

txSize

两次之间的分娩次数。

默认值:1

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号