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

武汉大学人民医院排名seo关键词排名技术

武汉大学人民医院排名,seo关键词排名技术,linux做网站服务器吗,wordpress 表格插件目录 1. 为什么消息队列会丢消息? 2. 怎么保障消息可靠传递? 2.1 生产者不丢消息 2.2 服务端不丢消息 2.3 消费者不丢消息 3. 消息丢失如何快速止损? 3.1 完善监控 3.2 完善止损工具 1. 为什么消息队列会丢消息? 现在主流…

目录

1. 为什么消息队列会丢消息?

2. 怎么保障消息可靠传递?

2.1 生产者不丢消息

2.2 服务端不丢消息

2.3 消费者不丢消息

3. 消息丢失如何快速止损?

3.1 完善监控

3.2 完善止损工具


1. 为什么消息队列会丢消息?

现在主流的消息队列都会提供完善的高可用解决方案,但是我们依然会有多种原因导致消息丢失,可能得原因包括:生产者生产消息失败、服务端存储消息失败、消费者消息处理失败。

其中常见的生产者生产消息失败的原因包括:

  • 消息体过大
  • 网络传输异常
  • 配置错误(例如:topic配置错误)
  • 生产者应用程序异常

服务端存储消息失败的常见原因包括:

  • 配置问题(例如:高性能方面考虑,未配置主从同步、未配置持久化)
  • 存储空间不足/存储介质故障

消费者消息处理失败的常见原因包括:

  • 消费者应用程序异常;
  • 消费者处理超时;
  • 消费过程中出现服务重启等问题;

2. 怎么保障消息可靠传递?

2.1 生产者不丢消息

  • 快速重试:在程序设计时,需要关注异常处理机制,我们需要遵循的原则是:异常处理 + 自动重试 + 告警(缺一不可),详细展开讲就是:1、任何系统异常,避免在不确定情况下随意捕获异常,从而导致被错误”兜底“处理。2、在生产消息异常情况下,需要支持异常情况下的自动重试,且多次重试需要有一定间隔时间。(此方案要求消费者幂等)3、遇到预期之外的异常及时埋点、告警等。
  • 消息补偿:引入"异常补偿服务",通过异常补偿服务收集生产者、消费者的异常消息进行持久化 + 重试。

2.2 服务端不丢消息

MQ Cluster不丢消息关键参考消息队列高可用方案,总结下来就是:

  • 持久化:持久化的目的是在服务故障或宕机时,消息不会丢失。对于RabbitMQ、Kafka、RocketMQ等不同的消息队列,除了消息日志被持久化之外,还需要关注元数据的持久化(例如:RabbitMQ中的Exchange元数据、Queue元数据等)、偏移量的持久化等。
  • 消息备份:RabbitMQ、Kafka、RocketMQ都支持消息备份,但是消息备份机制上存在一些差异,Kafka是针对每个分区都有主副本和多个从副本,RabbitMQ是采用镜像队列的方式,RocketMQ是每个消息主题都有主节点和多个从节点。
  • ACK确认机制:RabbitMQ、Kafka、RocketMQ在消息的ACK确认机制上差异不大,区别在于Kafka是基于分区的消息提交机制,也即某个分区所有消息消费完成后进行ACK;RabbitMQ是基于消费者的消息确认机制,即只有当消费者成功消费并处理了某条消息后,才会进行ACK确认;RocketMQ采用基于消费者组的消息确认机制,即只有当某个消费者组中所有消费者都成功消费并处理了某条消息后,才会进行确认。

2.3 消费者不丢消息

  • 快速重试:类似于生产者的解决方案,对于消息消费的异常需要感知并进行重试。在消费者的重试上需要注意:1、消息的重试次数需要有限,避免无限重试影响后续的消费;2、消息的消费需要幂等,避免前一次消费正常,再次消费时出现错误。
  • 监控消息:除了正常的消费队列,引入延迟的监控队列,在监控队列中通过状态等属性,监听消费者处理的正确性,对于消费异常的情况可以发送补偿消息。

3. 消息丢失如何快速止损?

3.1 完善监控

  • 实时监控:就是无论是生产者,还是消费者都需要及时捕获处理异常,并进行告警处理。
  • 旁路监控:就是引入监控队列/定时任务的方案,检查生产者与消费者的数据一致性,对于生产者与消费者数据不一致的场景进行及时告警处理。
  • 趋势监控:趋势监控是一种发现大规模问题的方法,也即埋点记录每一秒钟/每一分钟发出去的消息数,若代码变更后导致生产消息数/消费消息数明显降低,则需要及时关注进行处理。

3.2 完善止损工具

  • 消息生产工具:在日常开发中,建议养成在生产者发送消息前打印消息体日志的习惯。在发现数据异常后,可以重新手动发送消息。
  • 数据检查/回退工具:止损工具大家容易想到把消息重新生产一遍,也知道消息的消费需要具有幂等性。但是生产环境通常比较复杂,偶尔会产生一些异常数据导致消息生产/消费失败,或者消息处理一半产生预料之外的脏数据。这里建议建设相关一些数据快速回退工具、数据正确性工具,加快故障处理速度。

http://www.khdw.cn/news/58503.html

相关文章:

  • 北京做网站哪个好东莞网站seo公司
  • 网站建设邀标书网站推广教程
  • 饮料网站建设市场分析seo算法优化
  • 做淘宝那样的网站如何网络推广自己的产品
  • 购物网站设计方案郑州网络营销推广公司
  • 黑科技wifi蹭网神器长春关键词优化报价
  • 爱奇艺做视频网站的网络营销策划活动方案
  • 平面设计师工资现状企业站seo外包
  • 当今做哪个网站致富杭州seo全网营销
  • 广州seo网站推广优化什么叫优化
  • 营销型企业网站包括哪些类型湛江今日头条新闻
  • 兰州专业做网站网站seo网络优化
  • 尉氏做网站怎么seo网站排名
  • 网站伪静态规则山东泰安网络推广
  • 网站怎么发布做微商推广普通话的文字内容
  • 垂直型b2b网站有哪些关键词搜索引擎优化推广
  • 网站改版中 模板沈阳网站推广优化
  • html5手机网站特效百度账号中心官网
  • 闵行区新闻网网站如何做网站的教程
  • 写真盗版网站怎么做重庆seo整站优化方案范文
  • 公司开发网站建设游戏推广代理
  • 重庆博达建设集团股份有限公司网站香蕉和忘忧草对焦虑的影响
  • 国企公司网站制作广告联盟
  • 怎么看一个网站做的好不好竞价推广托管公司介绍
  • 网站改版新闻网站展示型推广
  • 手机怎么做网站服务器google官网浏览器
  • 东莞网站制作哪家最便宜成人专业技能培训机构
  • 建站公司外贸优化关键词可以选择哪个工具
  • 做视频自媒体要投稿几个网站推广方案
  • 在哪个网站做民营企业申报惠州seo网站推广