|
此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring AMQP 3.2.0! |
自 1.2 以来 1.3 中的变化
侦听器并发
侦听器容器现在支持根据工作负载动态扩展使用者数量,或者您可以在不停止容器的情况下以编程方式更改并发。 请参阅 侦听器并发。
侦听器队列
侦听器容器现在允许在运行时修改它侦听的队列。 此外,如果容器的至少一个已配置队列可供使用,则容器现在会启动。 请参阅 侦听器容器队列
此侦听器容器现在在启动期间重新声明任何自动删除队列。
看auto-delete队列.
消费者优先
侦听器容器现在支持使用者参数,让x-priority参数。
请参阅 Consumer Priority。
专属消费者
您现在可以配置SimpleMessageListenerContainer使用单个exclusiveconsumer,防止其他使用者侦听队列。
请参阅 Exclusive Consumer。
兔子管理员
现在,您可以让 broker 生成队列名称,而不管durable,autoDelete和exclusive设置。
请参见配置代理。
直接交换绑定
以前,省略key属性binding元素direct-exchange配置导致 queue 或 exchange 绑定了一个空字符串作为路由键。
现在它与提供的Queue或Exchange.
如果希望绑定空字符串路由密钥,则需要指定key="".
AmqpTemplate变化
这AmqpTemplate现在提供了几个同步的receiveAndReply方法。
这些由RabbitTemplate.
有关更多信息,请参阅接收消息。
这RabbitTemplate现在支持配置RetryTemplate在代理不可用时尝试重试(使用可选的 back-off 策略)。
有关更多信息,请参阅添加重试功能。
缓存连接工厂
您现在可以将缓存连接工厂配置为缓存Connection实例及其Channel实例,而不是使用单个连接和仅缓存Channel实例。
请参阅连接和资源管理。
绑定参数
这<binding>的<exchange>现在支持解析<binding-arguments>sub-元素。
您现在可以配置<binding>的<headers-exchange>替换为key/value属性对(在单个标头上匹配)或使用<binding-arguments>子元素(允许在多个标头上进行匹配)。
这些选项是互斥的。
请参阅 Headers Exchange。
路由连接工厂
新的SimpleRoutingConnectionFactory已引入。
它允许配置ConnectionFactoriesmapping,以确定目标ConnectionFactory在运行时使用。
请参阅 Routing Connection Factory。
MessageBuilder和MessagePropertiesBuilder
现在提供了用于构建消息或消息属性的“Fluent API”。 请参阅 Message Builder API。
RetryInterceptorBuilder改变
现在提供了用于构建侦听器容器重试侦听器的“Fluent API”。 请参阅 同步作失败 和 重试选项。
RepublishMessageRecoverer添加
这个新的MessageRecoverer以允许在重试用尽时将失败的消息发布到另一个队列(包括 Headers 中的堆栈跟踪信息)。
请参阅 消息侦听器和异步情况。
默认错误处理程序(自 1.3.2 起)
默认的ConditionalRejectingErrorHandler已添加到侦听器容器中。
此错误处理程序检测致命的消息转换问题,并指示容器拒绝该消息,以防止代理不断重新传送不可转换的消息。
请参见异常处理。
侦听器容器 'missingQueuesFatal' 属性(自 1.3.5 起)
这SimpleMessageListenerContainer现在有一个名为missingQueuesFatal(默认:true).
以前,缺少队列总是致命的。
请参阅 消息侦听器容器配置。