SpringCloud Rabbit生产者Properties

2023-11-29 16:04 更新

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

autoBindDlq

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

默认值:false

batchingEnabled

是否启用生产者的邮件批处理。根据以下属性(在此列表的后三个条目中进行了描述),将消息批处理为一条消息:'batchSize',batchBufferLimitbatchTimeout有关更多信息,请参见批处理

默认值:false

batchSize

启用批处理时要缓冲的消息数。

默认值:100

batchBufferLimit

启用批处理时的最大缓冲区大小。

默认值:10000

batchTimeout

启用批处理时的批处理超时。

默认值:5000

bindingRoutingKey

用于将队列绑定到交换机的路由密钥(如果bindQueuetrue)。仅适用于未分区的目的地。仅在提供requiredGroups的情况下适用,然后仅对那些组有效。

默认值:#

bindQueue

是否将队列绑定到目标交换机。如果您已经设置了自己的基础结构并且先前已创建并绑定了队列,则将其设置为false仅在提供requiredGroups的情况下适用,然后仅对那些组有效。

默认值:true

压缩

发送时是否应压缩数据。

默认值:false

deadLetterQueueName

DLQ的名称仅在提供了requiredGroups之后才适用,然后仅适用于那些组。

默认值:prefix+destination.dlq

deadLetterExchange

分配给队列的DLX。仅当autoBindDlqtrue时相关。仅在提供requiredGroups时适用,然后仅适用于那些组。

默认值:“ prefix + DLX”

deadLetterExchangeType

分配给队列的DLX的类型。仅当autoBindDlqtrue时才相关。仅在提供requiredGroups时适用,然后仅适用于那些组。

默认值:“直接”

deadLetterRoutingKey

分配给队列的死信路由键。仅当autoBindDlqtrue时相关。仅在提供requiredGroups时适用,然后仅适用于那些组。

默认值:destination

声明Dlx

是否声明目的地交换死信。仅当autoBindDlqtrue时才相关。如果您有预配置的DLX,请设置为false仅在提供requiredGroups时适用,然后仅适用于那些组。

默认值:true

声明交换

是否声明目的地交换。

默认值:true

delayExpression

一个SpEL表达式,用于评估应用于消息的延迟(x-delay标头)。如果交换不是延迟的消息交换,则无效。

默认值:未设置x-delay头。

延迟交易

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

默认值:false

deliveryMode

交付方式。

默认值:PERSISTENT

dlqDeadLetterExchange

声明DLQ后,将分配给该队列的DLX。仅在提供了requiredGroups之后才适用,然后仅对那些组适用。

默认值:none

dlqDeadLetterRoutingKey

声明DLQ后,将分配一个死信路由密钥给该队列。仅在提供requiredGroups时适用,然后仅适用于那些组。

默认值:none

dlqExpires

删除未使用的死信队列之前的时间(以毫秒为单位)。仅在提供requiredGroups时适用,然后仅适用于那些组。

默认值:no expiration

dlqLazy
x-queue-mode=lazy参数声明死信队列。请参阅惰性队列考虑使用策略而不是此设置,因为使用策略允许更改设置而不删除队列。仅在提供requiredGroups时适用,然后仅适用于那些组。
dlqMaxLength

死信队列中的最大消息数。仅在提供了requiredGroups之后才适用,然后仅对那些组适用。

默认值:no limit

dlqMaxLengthBytes

所有消息中的死信队列中的最大总字节数。仅在提供requiredGroups时适用,然后仅适用于那些组。

默认值:no limit

dlqMaxPriority

死信队列中邮件的最大优先级(0-255)仅在提供requiredGroups时才适用,然后仅适用于那些组。

默认值:none

dlqTtl

声明时应用于死信队列的默认生存时间(以毫秒为单位)。仅在提供requiredGroups时适用,然后仅适用于那些组。

默认值:no limit

exchangeAutoDelete

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

默认值:true

耐用

如果declareExchangetrue,则交换是否应该持久(在代理重新启动后生存)。

默认值:true

exchangeType

交换类型:directfanouttopic用于未分区的目的地,directtopic用于分区的目的地。

默认值:topic

过期

删除未使用的队列之前的时间(以毫秒为单位)。仅在提供requiredGroups时适用,然后仅适用于那些组。

默认值:no expiration

headerPatterns

标头要映射到出站邮件的模式。

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

使用x-queue-mode=lazy参数声明队列。请参阅惰性队列考虑使用策略而不是此设置,因为使用策略允许更改设置而不删除队列。仅在提供requiredGroups时适用,然后仅适用于那些组。

默认值:false

最长长度

队列中的最大消息数。仅在提供requiredGroups时适用,然后仅适用于那些组。

默认值:no limit

maxLengthBytes

来自所有消息的队列中的最大总字节数。仅在提供requiredGroups的情况下适用,然后仅对那些组有效。

默认值:no limit

maxPriority

队列中消息的最大优先级(0-255)。仅在提供requiredGroups的情况下适用,然后仅对那些组有效。

默认值:none

字首

要添加到destination交换名称的前缀。

默认值:“”。

queueNameGroupOnly

true时,从名称等于group的队列中使用。否则,队列名称为destination.group例如,在使用Spring Cloud Stream从现有RabbitMQ队列中消费时,这很有用。仅在提供requiredGroups时适用,然后仅适用于那些组。

默认值:false。

routingKeyExpression

一个SpEL表达式,用于确定发布消息时要使用的路由密钥。对于固定的路由键,请使用文字表达式,例如属性文件中的routingKeyExpression='my.routingKey'或YAML文件中的routingKeyExpression: '''my.routingKey'''

默认值:destinationdestination-<partition>(用于分区目标)。

交易的

是否使用交易渠道。

默认值:false

ttl

声明时适用于队列的默认生存时间(以毫秒为单位)。仅在提供requiredGroups时适用,然后仅适用于那些组。

默认值:no limit

对于RabbitMQ,可以由外部应用程序设置内容类型标头。Spring Cloud Stream支持它们作为用于任何类型的传输的扩展内部协议的一部分—包括Kafka(0.11之前的版本)之类的传输,其本身不支持标头。
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号