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

网站的发布与推广怎么写注册网站费用明细

网站的发布与推广怎么写,注册网站费用明细,小程序登录跳转,手机记事本做网站一、消费流程图 消息在消费出现异常的时候,将一直保留在消息队列,所以你会看到以下奇怪的现象: 消息队列仅有5个消息, 投递速度也非常快,结果却一直无法消费掉。 二、重试策略 重试机制的使用场景:重试机制…

一、消费流程图

在这里插入图片描述

消息在消费出现异常的时候,将一直保留在消息队列,所以你会看到以下奇怪的现象:

在这里插入图片描述
消息队列仅有5个消息, 投递速度也非常快,结果却一直无法消费掉。

二、重试策略

重试机制的使用场景:重试机制适用于那些可能因为临时问题(如网络问题、外部服务不可用等)导致处理失败的情况。

自定义重试逻辑:可以通过自定义错误处理器(如 RepublishMessageRecoverer)来实现更复杂的重试逻辑,例如记录重试次数并根据条件决定是否重新投递。

无限重试可能导致问题:如果消息本身存在问题(如格式错误),无限重试会导致大量日志输出,且可能阻塞队列。

本文就是中了此招,带来的后果就是SLS费用剧增。

1、重试次数

开启重试,设置重试的次数、间隔时间。

在计算间隔时间的时候,使用指数级增长,而非简单的倍数。

        listener:simple:retry:enabled: truemax-attempts: 5  # 最大重试次数initial-interval: 10000  # 初始重试间隔(毫秒)max-interval: 30000 # 最大重试间隔(毫秒)multiplier: 3 # 重试间隔的乘数因子

2、死信队列

为了避免消息无限重试,建议配置死信队列。当消息达到最大重试次数后,将其发送到死信队列,以便后续处理。

        listener:simple:default-requeue-rejected: false

通过合理配置重试机制和死信队列,可以有效避免消息无限重试导致的问题,同时确保消息的可靠处理。

建立死信消息监听者,对消息的最后处理,如果还是失败,则发送告警消息给相关人员。

当消费者在处理消息时抛出异常且达到最大重试次数后,消息会被拒绝并发送到死信队列,从而避免消息丢失并便于后续处理。

三、消息确认模式

在 Spring AMQP 的默认配置中,acknowledge-mode 的默认值是 AUTO,即自动确认模式。

最终rabbitmq的配置见下:

        listener:simple:retry:enabled: truemax-attempts: 5initial-interval: 10000max-interval: 30000multiplier: 3acknowledge-mode: autodefault-requeue-rejected: false

自动确认模式(AUTO)

在自动确认模式下,当消费者接收到消息后,Spring AMQP 会自动向 RabbitMQ 发送确认消息(ACK),表示消息已被成功消费。这意味着:

  • 优点:实现简单,不需要手动确认消息,适合简单的消费场景。
  • 缺点:如果消费者在处理消息时抛出异常,消息会被认为已经消费成功,从队列中移除,不会重新投递。这可能导致消息丢失。

手动确认模式(MANUAL)

在手动确认模式下,消费者需要显式地调用确认方法(basicAck 或 basicNack)来确认消息。这意味着:

  • 优点:可以更灵活地控制消息的确认时机,确保消息在成功处理后才被确认,从而避免消息丢失。
  • 缺点:实现相对复杂,需要在代码中手动处理确认逻辑。

四、总结

消息在消费的时候,如果出现异常,直接抛弃,不想进入重试流程。
你可能会配置修改如下:

        listener:simple:retry:enabled: false

回到最上面的流程图,其实还是无法解决消息消费失败的死循环。

虽然不会进入重试, 但是在消费消息的时候,由于抛异常,又会进入消息队列。

最终导致死循环。

解决方法是: 对于不想要重试,而又不陷入死循环。那么就只有一个办法,使用个大大的try-catch住消息监听方法。


文章转载自:

http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://00000000.kqzrt.cn
http://www.dtcms.com/wzjs/605010.html

相关文章:

  • 长春做网站长春网站设计网站设计简单讲解
  • 网站开发充值功能dw个人网站设计模板免费
  • 军事最新消息广州优化网站
  • 淘宝发布网站建设种子在线资源搜索神器
  • 微信公众号 链接微网站钢筋网片理论重量表规格表
  • 益阳网站制作公司地址构建一个网站的步骤
  • 雷州手机网站建设电子商务网站软件建设核心
  • 做网站怎么插音乐循环广东的网站备案
  • 辽宁网站建设企业定制公司永久免费linux服务器下载
  • 沧州国外网站建设织梦如何做汽车贸易网站
  • 宁津 做网站建自己的网站做外贸
  • 开发网站培训班厦门网站建设推广
  • 计算机学习网站内蒙古自治区建设厅网站首页
  • asp 网站开发教程龙岩设计师
  • 汝阳网站建设荷兰网站域名
  • 网站繁体js公司管理系统网站
  • 滁州网站建设联系方式最近几天新闻大事
  • 做国外网站的站长微软哪个软件做网站
  • 重庆seo整站优化系统网页设计尺寸标注
  • 义乌公司网站wordpress 文章文件夹
  • 做传奇网站怎么弄怎么让网站被搜索到
  • 株洲做网站优化培训网站建设
  • 广州建设高端网站网站做友情链接的用途
  • 网站超链接的优化公司企业做网站怎么做
  • 重庆网站建设子沃科技熊掌号汽车网站策划书
  • 做外贸网站如果是东西杂会不会不好推广大连网站设计公司排名
  • 梦扬科技 合肥网站建设app开发费用报价表
  • 延庆县专业网站制作网站建设房地产网
  • 做资源的教育类网站或公司mvc5 网站开发之美 pdf
  • 做网站一个月能赚多少钱电子商务网站建设基本组成