时间:2021-05-20
死信队列:没有被及时消费的消息存放的队列,消息没有被及时消费有以下几点原因:
采用死信机制的好处是可以提高系统的稳定性,当消息消费失败后,消息进入死信队列,可以对消息进行补偿,可以达到最终一致性的目标.
具体例子如下:
@Beanpublic Queue deadQueue() { return new Queue(DEAD_QUEUE_NAME, true);}@Beanpublic DirectExchange deadExchange() { return new DirectExchange(DEAD_EXCHANGE_NAME);}@Beanpublic Binding bindingDeadExchange(Queue deadQueue, DirectExchange deadExchange) { return BindingBuilder.bind(deadQueue).to(deadExchange).with(DEAD_ROUTING_KEY);}@BeanQueue directQueue() { Map<String, Object> args = new HashMap<>(2); args.put("x-dead-letter-exchange", DEAD_EXCHANGE_NAME); args.put("x-dead-letter-routing-key", DEAD_ROUTING_KEY); return new Queue(DIRECT_QUEUE_NAME, true, false, false, args);}只要简易的配置,这样消费失败的消息就能被收集起来,后续我们可以实现一个死信消费者,将死信消息进行补偿。
如果是想手动补偿,可以将死信消息存入数据库,做一个管理页面去做补偿.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
利用Spring工厂加载机制,实例化ApplicationContextInitializer实现类,并排序对象集合。关键方法privateCollection
这篇文章主要介绍了Java包装类的缓存机制原理实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下java
详解JSP中Spring工作原理及其作用1.springmvc请所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责负责对请求进
本文实例讲述了Java反射机制原理与用法。分享给大家供大家参考,具体如下:Java反射机制Reflection(反射)是被视为动态语言的关键,反射机制允许程序在
Java反射机制的实例详解前言今天介绍下Java的反射机制,以前我们获取一个类的实例都是使用new一个实例出来。那样太low了,今天跟我一起来学习学习一种更加高