开发者社区 > 云原生 > 消息队列 > 正文

RabbitMQ&AMQP这种情况该如何排查是哪个队列异常导致的呢?

RabbitMQ&AMQP这种情况该如何排查是哪个队列异常导致的呢?300个队列,平时tps是200,但是突然不知道啥原因,tps到2000了,然后瞬间又降下来了。我总不能300个队列一个一个点击查看吧

展开
收起
三分钟热度的鱼 2023-12-13 15:00:27 34 0
2 条回答
写回答
取消 提交回答
  • 在这种情况下,要排查是哪个队列导致的异常TPS增加,可以按照以下步骤进行:

    1. 监控和日志分析
      使用阿里云提供的RabbitMQ监控工具或日志服务,查看在TPS突然升高的时间段内各个队列的详细情况。重点关注以下几个方面:

      • TPS变化最大的队列。
      • 消息堆积情况。
      • 消费者连接和消费情况。
      • 任何与错误、警告或异常相关的日志。
    2. 查询API和工具
      阿里云可能提供了一些查询API或者管理工具,可以帮助你快速定位问题队列。例如,你可以使用API查询特定时间段内每个队列的TPS变化情况。

    3. 筛选和排序
      如果没有现成的工具或API,你可以编写脚本或者使用编程语言(如Python、Java等)来查询RabbitMQ的管理接口,获取所有队列的TPS数据,并按照TPS的变化幅度进行排序,以便快速找到可能的问题队列。

    4. 逐步排查
      根据上述步骤找出TPS变化最大的几个队列,然后逐一进行深入排查。检查这些队列的生产者和消费者代码,看看是否存在可能导致异常TPS的行为,如批量发送、异常处理不当等。

    5. 系统级排查
      考虑到TPS瞬间升高后又迅速下降,可能是由于一些临时性的系统级问题,如网络波动、资源争抢、瞬时高并发等。检查服务器资源使用情况、网络状况以及与其他系统的交互情况。

    6. 报警和通知
      设置监控告警,当TPS超过预设阈值时自动发送通知,这样可以在问题发生时立即得到提醒,并能够更快地定位问题队列。

    2023-12-29 16:03:12
    赞同 展开评论 打赏
  • dashboard中能看 top20 queue的消息收发流量。如果有开通服务的话,可以通过SLS语句进行清洗,如果有开通服务的话。此回答整理自钉群“RabbitMQ&AMQP 产品咨询群”

    2023-12-13 20:20:50
    赞同 展开评论 打赏

多个子产品线联合打造金融级高可用消息服务以及对物联网的原生支持,覆盖多行业。

相关产品

  • 云消息队列 MQ
  • 热门讨论

    热门文章

    相关电子书

    更多
    RocketMQ Client-GO 介绍 立即下载
    RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载
    基于 RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载