其他分享
首页 > 其他分享> > 保证MQ消息的可靠性

保证MQ消息的可靠性

作者:互联网

 

1.如何确认消息发送到了交换机?

  callback机制

 

  实现RabbitTemplate.ConfirmCallback接口,并实现其方法

2.如何确认消息发送到了队列?

  return机制

  实现RabbitTemplate.ConfirmReturn接口,并实现其方法

上述两个机制均需要绑定到项目的RabbitTemplate

 

@PostConstruct
public void initMethod(){
rabbitTemplate.setConfirmCallback(this);
rabbitTemplate.setReturnCallback(this);
}

 

3.如何进行消息持久化?

 

  使用MessageProperties类封装配置,和传递对象的字节数组   一起封装到Message传输

4.如何保证消息一定被消费成功?

  在消费者方设置MQ的重试机制  和 补偿

配置中重试的参数:

  重试的间隔时间 :第一次重试的间隔

  最大重试次数

  最大的间隔时间:

  重试因子  重试因子 X 上一次的间隔时间 = 此次重试间隔时间

 

 

 

 

 

 



 

标签:RabbitTemplate,rabbitTemplate,可靠性,重试,保证,消息,MQ,间隔时间,机制
来源: https://www.cnblogs.com/javarook/p/13592063.html