133.5. 端点选项
Spring RabbitMQ 端点使用 URI 语法进行配置:
spring-rabbitmq:exchangeName
spring-rabbitmq:exchangeName
以下是路径和查询参数:
133.5.1. 路径参数(1 参数) 复制链接链接已复制到粘贴板!
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
exchangeName (common) | 必需 The Exchange name 决定生成的消息发送到的交换。如果是消费者,交换名称决定了队列将绑定到的交换。注意:要使用默认交换,不使用空名称,而是使用 default。 | 字符串 |
133.5.2. 查询参数(34 参数) 复制链接链接已复制到粘贴板!
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
ConnectionFactory (common) | 要使用的连接工厂。必须在组件或端点上配置连接工厂。 | ConnectionFactory | |
disableReplyTo (common) | 指定 Camel 是否忽略消息中的 ReplyTo 标头。如果为 true,Camel 不会发送回复回 ReplyTo 标头中指定的目的地。如果您希望 Camel 从路由消耗且您不希望 Camel 自动发送回复消息,因为代码中的另一个组件处理回复消息,则可以使用这个选项。如果要使用 Camel 作为不同消息代理之间的代理,并希望将消息从一个系统路由到另一个系统,也可以使用这个选项。 | false | 布尔值 |
routingKey (common) | 要使用的路由键的值。默认为空,在使用默认(或任何直接)交换时,这并不有用,但如果交换是实例的标头交换,则正常。 | 字符串 | |
testConnectionOnStartup (common) | 指定是否在启动时测试连接。这样可确保当 Camel 启动所有 JMS 用户与 JMS 代理的有效连接时。如果无法授予连接,则 Camel 会在启动时抛出异常。这样可确保 Camel 不使用失败的连接启动。JMS producers 也经过测试。 | false | 布尔值 |
acknowledgeMode (consumer) | 标志控制与消息确认相关的容器的行为。最常见的用法是让容器处理确认(因此,侦听器不需要了解频道或消息)。设置为 AcknowledgeMode.MANUAL,如果监听器将使用 Channel.basicAck (长,布尔值)发送确认本身。手动攻击与事务或非事务频道一致,但如果您在频道上没有其他工作,除了收到单个消息外,则事务可能并不是必需的。设置为 AcknowledgeMode.NONE 以告知代理不会期望任何确认,它将假定所有消息在发送后马上被确认(这是原生 Rabbit 代理术语)。如果 AcknowledgeMode.NONE 不能事务处理(如果意外设置该标志,容器将在启动时失败)。 Enum 值:
| acknowledgeMode | |
asyncConsumer (consumer) | 消费者是否异步处理交换。如果启用,则消费者可以从队列中获取下一个消息,而以前的消息是异步处理的(通过异步路由引擎)。这意味着消息可能没有完全严格按照顺序进行处理。如果禁用(作为默认),则消费者将从队列获取下一个消息之前完全处理 Exchange。 | false | 布尔值 |
autoDeclare (consumer) | 指定消费者是否应在启动时自动声明交换、队列和路由密钥之间的绑定。 | true | 布尔值 |
autoStartup (consumer) | 指定消费者容器是否应自动启动。 | true | 布尔值 |
deadLetterExchange (consumer) | 死信交换的名称。 | 字符串 | |
deadLetterExchangeType (consumer) | 死信交换的类型。 Enum 值:
| direct | 字符串 |
deadLetterQueue (consumer) | 死信队列的名称。 | 字符串 | |
deadLetterRoutingKey (consumer) | 死信交换的路由密钥。 | 字符串 | |
exchangeType (consumer) | 交换的类型。 Enum 值:
| direct | 字符串 |
exclusive (consumer) | 对于专用消费者,设置为 true。 | false | 布尔值 |
maximumRetryAttempts (consumer) | 如果 Camel 无法处理消息,则 Rabbitmq 使用者将重试同一消息的次数。 | 5 | int |
noLocal (consumer) | 对于一个 no-local 消费者,设置为 true。 | false | 布尔值 |
queues (consumer) | 用于消耗消息的队列。可以使用逗号分隔多个队列名称。如果没有配置,则 Camel 将生成一个唯一的 id,作为消费者的队列名称。 | 字符串 | |
rejectAndDontRequeue (consumer) | Rabbitmq 使用者是否应该拒绝消息,而不会重新排队。这可让失败的消息发送到 Dead Letter Exchange/Queue (如果代理配置)。 | true | 布尔值 |
retryDelay (consumer) | msec 中的延迟会延迟 Rabbitmq 使用者,然后会等待 Camel 无法处理的消息。 | 1000 | int |
bridgeErrorHandler (consumer (advanced)) | 允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。 | false | 布尔值 |
concurrentConsumers (consumer (advanced)) | 用户数量。 | 整数 | |
exceptionHandler (consumer (advanced)) | 要让使用者使用自定义例外处理程序:请注意,如果启用了 bridgeErrorHandler 选项,则此选项不使用。默认情况下,消费者将处理异常,其记录在 WARN 或 ERROR 级别中,并忽略。 | ExceptionHandler | |
exchangePattern (consumer (advanced)) | 在消费者创建交换时设置交换模式。 Enum 值:
| ExchangePattern | |
maxConcurrentConsumers (consumer (advanced)) | 最多消费者数量(仅适用于 SMLC)。 | 整数 | |
messageListenerContainerType (consumer (advanced)) | MessageListenerContainer 的类型。 Enum 值:
| DMLC | 字符串 |
prefetchCount (consumer (advanced)) | 告知代理在单个请求中发送多少个消息。这通常设置得非常高,以提高吞吐量。 | 整数 | |
retry (consumer (advanced)) | 要使用的自定义重试配置。如果进行了此配置,则使用其他设置,如重试的 maximumRetryAttempts。 | RetryOperationsInterceptor | |
replyTimeout (producer) | 指定在进行请求/回复消息传递时等待回复消息时使用的超时时间(毫秒)。默认值为 5 秒。负值表示无限期超时。 | 5000 | long |
usePublisherConnection (producer) | 为发布者和消费者使用单独的连接。 | false | 布尔值 |
lazyStartProducer (producer (advanced)) | 生成者是否应懒惰启动 (在第一个消息中)。通过懒惰启动,您可以使用此选项来允许 CamelContext 和路由在生成者启动期间启动,并导致路由启动失败。通过懒惰启动,启动失败可以在路由信息时通过 Camel 的路由错误处理程序进行处理。请注意,在处理第一个消息时,创建并启动生成者可能需要稍等时间,并延长处理的总处理时间。 | false | 布尔值 |
args (advanced) | 指定配置不同 RabbitMQ 概念的参数,每个元素都需要一个不同的前缀:arg.consumer. arg.exchange. arg.queue. arg.binding. arg.dlq.exchange. arg.dlq.queue. arg.dlq.binding. arg.dlq.binding。例如,使用消息 ttl 参数声明队列:args=arg.queue.x-message-ttl=60000。 | Map | |
messageConverter (advanced) | 要使用自定义 MessageConverter,您可以控制如何映射到 org.springframework.amqp.core.Message。 | MessageConverter | |
messagePropertiesConverter (advanced) | 要使用自定义 MessagePropertiesConverter,您可以控制如何映射到 org.springframework.amqp.core.MessageProperties。 | MessagePropertiesConverter | |
同步 (高级) | 设置是否应严格使用同步处理。 | false | 布尔值 |