当前位置: 首页 > wzjs >正文

两学一做专题教育网站企业数字展厅设成都企业展厅设计公司

两学一做专题教育网站,企业数字展厅设成都企业展厅设计公司,设计工作室起名,深圳物联网开发文章目录 1.RabbitMQ-如何保证消息不丢失?2.RabbitMQ消息的重复消费问题如何解决的?3.RabbitMQ中死信交换机 ? (RabbitMQ延迟队列有了解过嘛)4.RabbitMQ如果有100万消息堆积在MQ , 如何解决(消息堆积怎么解决)5.RabbitMQ的高可用机制有了解过嘛6.RabbitMQ如何保证消息的有序…

文章目录

  • 1.RabbitMQ-如何保证消息不丢失?
  • 2.RabbitMQ消息的重复消费问题如何解决的?
  • 3.RabbitMQ中死信交换机 ? (RabbitMQ延迟队列有了解过嘛)
  • 4.RabbitMQ如果有100万消息堆积在MQ , 如何解决(消息堆积怎么解决)
  • 5.RabbitMQ的高可用机制有了解过嘛
  • 6.RabbitMQ如何保证消息的有序性?
  • 7.RabbitMQ有哪些消息处理模式(订阅模式或工作模式)?

1.RabbitMQ-如何保证消息不丢失?

消息中间件的好处

  • 提供了系统之间的异步调用,让服务与服务之间解耦
  • 削峰、填谷

场景:

  • 异步发送(验证码、短信、邮件…)
  • MySQL和Redis , ES之间的数据同步
  • 分布式事务
  • 削峰填谷

在这里插入图片描述
消息发送者(publisher )把消息发送给交换机(exchange),由交换机路由到队列,最后由消费者(consumer)进行消费消息。

出现消息丢失的四种情况:

  • 消息未到达交换机
  • 消息未到达队列
  • 队列中消息丢失
  • 消费者未接收到消息

生产者确认机制(解决消息未到达交换机、消息未到达队列问题)

RabbitMQ提供了publisher confirm机制来避免消息发送到MQ过程中丢失。消息发送到MQ以后,会返回一个结果(ack)给发送者,表示消息是否处理成功
在这里插入图片描述
如果消息发送失败,有两种情况:

  • 消息到达交换机失败(publisher-confirm nack)
  • 交换机路由到队列失败(publisher-return ack)

消息失败之后如何处理呢?

  • 回调方法即时重发(知道哪一个消息发送失败,可以再发)
  • 记录日志(如果还是发送失败,可以记录日志,通过查看日志进行补偿)
  • 保存到数据库然后定时重发,成功发送后即刻删除表中的数据

如果重发失败了怎么办?

  • 一般消息发送失败了,很大几率是服务提供者宕机了或者是MQ宕机了,这两者不可能一直处于宕机状态。
  • 如果还是不能解决,需要人工来解决这些问题

消息已经正常发送到队列,但是MQ 宕机了,也会导致消息丢失,该怎么解决?

消息持久化(解决队列中消息丢失问题)
MQ默认是内存存储消息,开启持久化功能可以确保缓存在MQ中的消息不丢失。(MQ宕机或重启后,在内存中的消息肯定会丢失,需要持久化)

1.交换机持久化:

@Bean
public DirectExchange simpleExchange(){  
// 三个参数:交换机名称、是否持久化、当没有queue与其绑定时是否自动删除
return new DirectExchange("simple.direct", true, false);
}

2.队列持久化:

@Bean 
public Queue simpleQueue(){     
// 使用QueueBuilder构建队列,durable就是持久化的     
return QueueBuilder.durable("simple.queue").build(); 
}

3.消息持久化,SpringAMQP中的的消息默认是持久的,可以通过MessageProperties中的DeliveryMode来指定的:

Message msg = MessageBuilder
.withBody(message.getBytes(StandardCharsets.UTF_8)) //消息体
.setDeliveryMode(MessageDeliveryMode.PERSISTENT) //持久化
.build();

消费者确认(解决消费者未接收到消息问题)

Rabb


文章转载自:

http://a3tOhie0.yfchq.cn
http://nhx1SqkX.yfchq.cn
http://Lv62BYev.yfchq.cn
http://SALY1uGt.yfchq.cn
http://NYWWEVeO.yfchq.cn
http://vSjHeRTb.yfchq.cn
http://L3Kz6Vw6.yfchq.cn
http://NgTGEl96.yfchq.cn
http://p4NZBUPa.yfchq.cn
http://vccKGQFj.yfchq.cn
http://YsKveBF2.yfchq.cn
http://KsGTWXhZ.yfchq.cn
http://c3JNT8du.yfchq.cn
http://NH15y0UA.yfchq.cn
http://G89HRySL.yfchq.cn
http://EAjcW0xm.yfchq.cn
http://R0GrnbLY.yfchq.cn
http://BuwgsyqQ.yfchq.cn
http://I2enNBim.yfchq.cn
http://lKgSzqVd.yfchq.cn
http://gETAD3oA.yfchq.cn
http://nihmN0wc.yfchq.cn
http://iiKEAs7s.yfchq.cn
http://spnTfA1q.yfchq.cn
http://Z58mzCz4.yfchq.cn
http://tSpzobQi.yfchq.cn
http://ALQDyoVp.yfchq.cn
http://YtRGkpQ7.yfchq.cn
http://g0ri0Z4F.yfchq.cn
http://imugoLoV.yfchq.cn
http://www.dtcms.com/wzjs/639712.html

相关文章:

  • 国外免费网站空间公众号开发渠道二维码怎么做
  • 程序员做彩票网站违法吗ps 做ui比较好的网站有哪些
  • 网站建设作业指导书莱芜网红小莱芜
  • 广西高端网站建设网站开发进修
  • 电子商务网站建设研究教育网站建设 培训网站建设
  • 工业园区网站建设方案河南省新闻发布会直播
  • 网站开发模板免费下载网站建设是管理费用的哪项费用
  • 贵阳手机网站建设华强北 做网站
  • 海南省建设厅网站首页无锡哪里有做网站的
  • 网站悬浮代码windows2012系统怎么建设网站
  • 网站建设怎么做展厅设计企业
  • 一个网站开发团队要什么人如何购买网站服务器
  • 网站点击弹出下载框 怎么做的网站设计公司 龙岗
  • 网站及微站建设合同免费装饰公司网站模板
  • 如何上传网站到凡科网wordpress微信网站模板
  • 济南企业网站制作郑州网站建设 58
  • 网站建设背景怎么写廊坊网站建设推广经验
  • 网站如何做数据分析汕尾住房和建设局网站
  • 股权众筹网站开发努力把网站建设成为
  • 淘宝导购网站源码html5视频教程
  • 做网站什么服务器好wordpress square主题
  • 优秀网站建设哪个公司好网站首页动图怎么做
  • 好看的中文网站设计做感恩网站的图片
  • 网站设计和网页设计一样吗网站制作的差异化定位
  • 广东省高校质量工程建设网站中山网红
  • 四川有什么好的网站建设公司集团网站设计开发
  • 做详情页生成代码的网站建设部网站王尚春
  • 北京建站优化电子商务网站建设服务
  • 门户网站制作定制深圳网络安全公司排名
  • 深圳品牌公寓seo静态页源码