>Spring AMQP还通过使用`@RabbitListener`注解来支持带注解的侦听器端点,并提供一个开放式基础结构来以编程方式注册端点。 这是设置异步使用者最方便的方法,有关详细信息,请参阅“注解驱动的侦听器端点”一节。
>
>预取默认值曾经是1,这可能导致高效消费者利用不足。 从版本2.0开始,默认预取值现在为250,这应该使消费者在大多数常见场景中都很忙,从而提高吞吐量。
>然而,预取值应该是低的情况:例如,对于大消息,特别是如果处理很慢(消息可能在客户端进程中添加大量内存),并且如果需要严格的消息排序( 在这种情况下,预取值应该设置回1)。
>此外,对于低容量消息传递和多个使用者(包括单个侦听器容器实例中的并发),您可能希望减少预取以在消费者之间获得更均匀的消息分发。 还建议在`MANUAL` ack模式下使用`prefetch = 1`。 `basicAck`是异步操作,如果在Broker上发生错误(例如,对于相同的传递标记,双重确认),您最终会在批处理中处理后续处理的消息,但在Broker和其他消费者处可以看到它们。
- 1.前言
- 2.介绍
- 2.1 快速浏览
- 3.参考
- 3.1 使用spring amqp
- 3.1.1 AMQP抽象
- 3.1.2 资源的连接和管理
- 介绍
- 配置底层客户端连接工厂
- RabbitConnectionFactoryBean和配置SSL
- 路由连接工厂
- 队列亲和力和LocalizedQueueConnectionFactory
- 发送确认和返回
- 3.1.3 添加自定义客户端连接属性
- 3.1.4 AmqpTemplate
- 介绍
- 添加重试功能
- 发送消息是异步的 - 如何检测成功和失败
- 发布的确认和返回
- 3.1.5 发送消息
- 介绍
- 消息构建 API
- 发布的返回
- 3.1.6 接收消息
- 介绍
- 轮询消费者
- 异步消费者