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

如何编写网站seo门户网

如何编写网站,seo门户网,怎么做淘宝客网站页面,河北省住房和城乡建设部网站首页发送重试 RocketMQ 客户端发送消息时,由于网络故障等因素导致消息发送失败,这时客户端SDK会触发重试机制,尝试重新发送以达到调用成功的效果。 触发条件 客户端消息发送请求失败或超时。服务端节点处于重启或下线状态。服务端运行慢造成请…
发送重试

RocketMQ 客户端发送消息时,由于网络故障等因素导致消息发送失败,这时客户端SDK会触发重试机制,尝试重新发送以达到调用成功的效果。

触发条件
  • 客户端消息发送请求失败或超时。
  • 服务端节点处于重启或下线状态。
  • 服务端运行慢造成请求超时。
  • 服务端返回错误代码(逻辑错误/流控错误)。
重试流程

当重试机制触发时,客户端会按照设置的重试次数一直重新尝试发送消息,直到消息发送成功或达到最大重试次数,在最后一次重试失败后会返回调用错误响应。

重试间隔

如果触发原因不是系统流控错误,则会立即进行重试,无间隔时间。如果是系统流控错误,则会按照指数退避策略进行延迟重试:

INITIAL_BACKOFF: 第一次失败重试前后需等待多久,默认值:1秒。
MULTIPLIER:指数退避因子,即退避倍率,默认值:1.6。
JITTER:随机抖动因子,默认值:0.2。
MAX_BACKOFF:等待间隔时间上限,默认值:120秒
MIN_CONNECT_TIMEOUT:最短重试间隔,默认值:20秒。
系统流控

RocketMQ服务端在系统资源紧缺的时候,会通过快速返回错误来避免底层资源承受更高压力。

触发条件:

  • 存储压力过大:队列存储压力过大时。
  • 服务端请求任务排队溢出:如果消费者消费能力不足,会导致队列中堆积大量消息,当消息超过一定数量后会触发流控。
消费重试

当消费者返回错误状态或超时未返回状态时,RocketMQ 会根据消费重试策略重新投递消息。当重试超过一定次数后,如果还未消费成功,则不再继续重试,直接将消息发送到死信队列中。

主要概念
  • 重试过程状态机:控制消息在重试流程中的状态变化逻辑。
  • 重试间隔:下一次重新尝试消费的时间间隔。
  • 最大重试次数:消息可以被重试消费的最大次数。

不同的消费者类型,消息重试策略略有不同:

消费者类型状态机重试间隔重试次数
PushConsumer就绪/处理中/待重试/提交/死信创建分组时控制。无序消息使用阶梯间隔,顺序消息使用固定间隔。创建分组时控制
SimpleConsumer就绪/处理中/提交/死信通过API修改。创建分组时控制
PushConsumer重试策略

重试状态机

请添加图片描述

  • 就绪(Ready):消息在 RocketMQ 服务端已就绪,可以被消费者消费。

  • 处理中(Inflight):消息被消费者获取,但还未返回消费结果的状态。

  • 待重试(WaitingRetry):当消息处理失败或超时时,会触发重试逻辑。如果重试次数未达到上限,则该消息状态变为待重试,等待重试间隔后,消息重新变为已就绪状态以重新消费。

    待重试是 PushConsumer 特有的状态。

  • 提交(Commit):消费者完成消费逻辑并返回成功响应。

  • 死信(DLQ):消费逻辑的最终兜底机制,当消息重试次数达到上限还未成功,则不会再重试,而是投递到死信队列。死信队列可以被消费从而进行业务恢复。

重试时间间隔

  • 无序消息:重试时间间隔为阶梯时间

    重试次数间隔时间重试次数间隔时间
    110秒97分钟
    230秒108分钟
    31分钟119分钟
    42分钟1210分钟
    53分钟1320分钟
    64分钟1430分钟
    75分钟151小时
    86分钟162小时

    如果重试次数超过16,则后面每次重试间隔为2小时。

  • 顺序消息:重试间隔为固定时间。

SimpleConsumer重试策略

重试状态机

请添加图片描述

  • 就绪(Ready):消息在 RocketMQ 服务端已就绪,可以被消费者消费。
  • 处理中(Inflight):消息被消费者获取,但还未返回消费结果的状态。
  • 提交(Commit):消费者完成消费逻辑并返回成功响应。
  • 死信(DLQ):消费逻辑的最终兜底机制,当消息重试次数达到上限还未成功,则不会再重试,而是投递到死信队列。死信队列可以被消费从而进行业务恢复。

不可见时间

SimpleConsumer 的重试间隔是通过不可见时间来控制的,不可见时间是在调用获取消息API时设置的,可以理解为消息最大处理时长,当消费时间达到了不可见时间仍未返回消息或已经在此前返回失败消息时,则触发重试。

例如设置的不可见时间为50ms,实际在30ms的时候已经返回失败消费状态,那么此时会间隔20ms后触发重试机制。

不可见时间支持在消费处理逻辑中动态修改,修改后立即生效,但修改的实际必须满足一下两个条件:

  • 消息处理未超时。
  • 消息处理未提交消费状态。
    请添加图片描述
http://www.ds6.com.cn/news/39381.html

相关文章:

  • 上海网站建设联系电话成都网站建设方案优化
  • 网站建设公司公司哪家好英语seo
  • 淮北市建设委员会网站seo怎么快速提高排名
  • b2b网站做水处理哪个好计算机培训机构哪个最好
  • 巴南网站制作seo推广费用
  • 闲鱼怎么推广自己的产品广西seo
  • 中国建设银行官网网站首页如何做企业网站
  • 哈尔滨模板建站哪个品牌好网站seo招聘
  • 做代购注册什么网站seo入门培训
  • 做设计的地图网站有哪些2345网址导航设为主页
  • 网站做三个月收录100营销培训课程内容
  • java做网站需要什么深圳市昊客网络科技有限公司
  • 泉州网站建设托管干净无广告的搜索引擎
  • 公司想做一个网站推广普通话内容
  • 有哪些小程序免费模板平台seo规范培训
  • 网站注册商标属于哪一类购买域名的网站
  • wordpress 自定义搜索功能贵阳seo网站推广
  • 网站服务器租用价格十大小说网站排名
  • 广州做网站优化费用谷歌优化怎么做
  • 做自媒体怎么在其它网站搬运内容深圳全网推广排名
  • 南开网站建设公司b2b推广网站
  • 怎么打开文件做的网站合肥seo代理商
  • 破解直播免费视频济南seo外贸网站建设
  • 手机电子商务网站建设问卷调查买外链网站
  • 做自己任务的网站教育培训机构加盟十大排名
  • 用dedecms 做门户网站什么是搜索引擎优化推广
  • 宁波网站推广厂家电话微信营销模式
  • 同城做鸭网站hao123影视
  • 做图网站有哪些内容媒体发稿公司
  • 怎么做英文版网站西安网站建设制作