Spring Batch AmqpItemReader确认

问题描述 投票:1回答:1

当我想要在我的服务停止后将数据返回队列时,在阅读批量数据后,我遇到了问题。如果我在amqp中理解了goos,我可以使用确认,但在spring bath文档中我没有看到任何相关信息。另外,我检查AmqpItemReader的源代码,我没有看到任何确认流程。我是否需要使用此流程实现自定义ItemReader或遗漏某些内容?

spring-batch spring-rabbitmq
1个回答
2
投票

AmqpItemReader使用简单的RabbitTemplate.receive()操作,它会立即响应消息,除非它在事务中运行。

控制ack的唯一方法是使用事务(使用RabbitTransactionManager)。

如果事务已提交或回滚,事务管理器将分别对消息进行确认或重新排队。

© www.soinside.com 2019 - 2024. All rights reserved.