对于最新的稳定版本,请使用 Spring AMQP 3.2.0! |
自 1.4 以来 1.5 中的变化
spring-erlang
不再受支持
该 jar 不再包含在分发中。
请改用 RabbitMQ REST API。spring-erlang
CachingConnectionFactory
变化
用于控制容器队列声明行为的属性
当侦听器容器使用者启动时,他们尝试被动声明队列以确保它们可用
在经纪人上。
以前,如果这些声明失败(例如,因为队列不存在)或当 HA 队列
移动时,重试逻辑固定为每隔 5 秒进行三次重试尝试。
如果队列仍然存在,则行为由属性 (default: ) 控制。
此外,对于配置为从多个队列侦听的容器,如果只有一个队列子集可用,则使用者
以 60 秒的固定间隔重试缺少的队列。missingQueuesFatal
true
的 、 和 属性现在是可配置的。
有关更多信息,请参阅 Message Listener Container Configuration (消息侦听器容器配置)。declarationRetries
failedDeclarationRetryInterval
retryDeclarationInterval
DefaultMessagePropertiesConverter
变化
您现在可以将
确定已转换的 A 的最大长度
到 a 而不是 a 。
转换器具有将该值作为限制的替代构造函数。
以前,此限制是硬编码为 bytes。
(在 1.4.4 中也可用)。DefaultMessagePropertiesConverter
LongString
String
DataInputStream
1024
@RabbitListener
改进
自动交换、排队和绑定声明
您现在可以声明定义这些实体集合的 bean,并且添加了
contents 添加到它在建立连接时声明的实体列表中。
有关更多信息,请参见Declaring Collections of Exchanges, Queues, and Bindings。RabbitAdmin
RabbitTemplate
变化
reply-address
添加
该属性已作为替代 添加到组件中。
有关更多信息,请参阅请求/回复消息。
(在 1.4.4 中也作为 ) 上的 setter 提供。reply-address
<rabbit-template>
reply-queue
RabbitTemplate
阻塞方法receive
现在支持 blocking in 和 methods.
有关更多信息,请参阅轮询使用者。RabbitTemplate
receive
convertAndReceive
对于 Methods 是必需的sendAndReceive
如果在使用 和 方法时设置了标志,则调用线程
如果无法传递请求消息,则引发一个。
有关更多信息,请参阅 Reply Timeout (回复超时)。mandatory
sendAndReceive
convertSendAndReceive
AmqpMessageReturnedException
RabbitManagementTemplate
添加
引入了 RabbitMQ Broker 以使用其管理插件提供的 REST API 来监控和配置 RabbitMQ Broker。
有关更多信息,请参阅 [management-rest-api]。RabbitManagementTemplate
侦听器容器 Bean 名称 (XML)
元素上的属性已被删除。
从此版本开始,将单独使用 on the child 元素来命名为每个侦听器元素创建的侦听器容器 Bean。 应用正常的 Spring bean 名称覆盖。
如果以后使用与现有 Bean 相同的 bean 进行解析,则新定义将覆盖现有 Bean。
以前,bean 名称由 和 元素的属性组成。 迁移到此版本时,如果您的元素上有属性,请删除这些属性,然后改为在子元素上设置 。 |
但是,为了支持以组的形式启动和停止容器,添加了一个新属性。
定义此属性后,此元素创建的容器将添加到具有此名称的 bean(类型为 )中。
您可以迭代此组以启动和停止容器。group
Collection<SimpleMessageListenerContainer>
类级别@RabbitListener
现在可以在类级别应用注释。
与新的方法注释一起,这允许您根据有效负载类型选择处理程序方法。
有关更多信息,请参阅 Multi-method Listeners 。@RabbitListener
@RabbitHandler
SimpleMessageListenerContainer
: BackOff 支持
现在可以为 提供用于启动恢复的实例。
有关更多信息,请参阅 Message Listener Container Configuration (消息侦听器容器配置)。SimpleMessageListenerContainer
BackOff
consumer
通道关闭日志记录
引入了一种控制 channel closure 的对数级别的机制。 请参见Channel Close Logging。
应用程序事件
现在,当使用者发生故障时,它会发出应用程序事件。
有关更多信息,请参阅使用者事件。SimpleMessageListenerContainer
Consumer 标签配置
以前,异步使用者的使用者标签是由 Broker 生成的。 在此版本中,现在可以为侦听器容器提供命名策略。 请参阅 Consumer Tags。
匿名队列命名
从版本 1.5.3 开始,您现在可以控制名称的生成方式。
有关更多信息,请参阅 AnonymousQueue
。AnonymousQueue