我是靠谱客的博主 土豪帽子,这篇文章主要介绍Spring-Amqp MessageListener详解,现在分享给大家,希望可以做个参考。

为什么80%的码农都做不了架构师?>>>   hot3.png

在使用Spring集成RabbitMQ时,需要监听RabbiMQ消息。一般选择性实现下面俩接口:

MessageListener   只能获取到Message信息

ChannelAwareMessageListener  能获取到Message以及Channel信息

不同点在于channel可以手工确认消息以及拒绝

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class TestMessageListener implements ChannelAwareMessageListener { private static final Logger logger = LoggerFactory.getLogger(TraceAnalyzeListener.class); @Autowired private TraceAnalyzeService traceAnalyzeService; @Autowired private ElasticOperationService elasticOperationService; @Autowired private RedisTemplate<String, String> redisTemplate; @Autowired private TraceMessageSender traceMessageSender; @Override public void onMessage(Message message, Channel channel) throws Exception { //消息的标识,false只确认当前一个消息收到,true确认所有consumer获得的消息 //channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); //确认成功收到消息 //ack返回false,并重新回到队列,api里面解释得很清楚 //channel.basicNack(message.getMessageProperties().getDeliveryTag(), false, true); //拒绝消息 //channel.basicReject(message.getMessageProperties().getDeliveryTag(), true); } }

 

转载于:https://my.oschina.net/woter/blog/1806673

最后

以上就是土豪帽子最近收集整理的关于Spring-Amqp MessageListener详解的全部内容,更多相关Spring-Amqp内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(71)

评论列表共有 0 条评论

立即
投稿
返回
顶部