133.9. 自动声明交换、队列和绑定
在可以从 RabbitMQ 发送或接收消息之前,您必须首先设置交换、队列和绑定。
在开发模式中,Camel 可以自动执行此操作。您可以通过在 SpringRabbitMQComponent 上设置 autoDeclare=true 来启用此功能。
然后,Spring RabbitMQ 会自动声明元素,并在交换、队列和路由密钥之间建立绑定。
可使用 multi-valued args 选项配置元素。
例如,要将队列指定为 durable 和 exclusive,您可以使用 arg.queue.durable=true&arg.queue.exclusive=true 配置端点 uri。
Exchanges
| 选项 | 类型 | 描述 | default |
|---|---|---|---|
| autoDelete | 布尔值 | 如果服务器不再使用时(如果所有绑定都被删除),则为 true。 | false |
| Durable | 布尔值 | 持久化交换将在服务器重启后保留。 | true |
您还可以配置任何其他 x- 参数。请参阅 RabbitMQ 文档中的详情。
队列
| 选项 | 类型 | 描述 | default |
|---|---|---|---|
| autoDelete | 布尔值 | 如果服务器不再使用时(如果所有绑定都被删除),则为 true。 | false |
| Durable | 布尔值 | 服务器重启后,持久化队列将保留。 | false |
| exclusive | 布尔值 | 队列是排斥的 | false |
| x-dead-letter-exchange | 字符串 | 死信交换的名称。如果没有配置,则使用组件配置的值。 | |
| x-dead-letter-routing-key | 字符串 | 死信交换的路由密钥。如果没有配置,则使用组件配置的值。 |
您还可以配置任何其他 x- 参数,如使用 x-message-ttl 及其他参数的消息时间。请参阅 RabbitMQ 文档中的详情。