消息队列 RabbitMQ 遇上可观测 - 业务链路可视化

本篇文章主要介绍阿里云消息队列 RabbitMQ 版的可观测功能。RabbitMQ 的可观测能力相对开源有了全面的加强,为业务链路保驾护航。

消息队列 RabbitMQ 简介

阿里云消息队列 RabbitMQ 版是一款基于高可用分布式存储架构实现的 AMQP 0-9-1 协议的消息产品,兼容开源 RabbitMQ 客户端,解决开源各种稳定性痛点(例如消息堆积、脑裂等问题),同时具备高并发、分布式、灵活扩缩容等云消息服务优势。

阿里云消息队列 RabbitMQ 的可观测能力相对开源有了全面的加强,那么什么场景下可以用到可观测能力呢?

为什么需要强大的可观测能力

随着分布式和云原生架构的兴起,系统的可观测性在问题排查、系统运维,甚至业务运营方面起到越来越重要的作用。

场景一:线上消息消费有异常,消息不能及时被处理,需要及时收到报警,并快速定位问题;

场景二:线上某些订单状态有异常,需要排查对应的消息链路环节是否正常发送消息

场景三:需要分析消息流量变化趋势、流量分布特点或消息体量,进而进行业务趋势分析规划;

场景四:需要查看和分析应用上下游依赖拓扑情况,进行架构升级优化或改造。

消息队列 RabbitMQ 可观测能力

结合上文的内容,下面具体对阿里云消息队列 RabbitMQ 的可观测性的两个核心功能进行介绍。

核心优势

  • 可观测 Dashboard 大盘

1、优化性能,具备超强稳定性;

2、一键开箱,降低搭建成本;

3、呈现清晰,问题资源一眼可见。

  • 可观测消息轨迹

1、可实现多种问题场景的筛查和搜索能力;

2、支持图形化展示复杂的轨迹信息,使用更加便捷。

可观测 Dashboard 大盘

  • 应用场景

使用 Prometheus 监控服务和 Grafana 的指标存储和展示能力,消息队列 RabbitMQ 版为企业版和铂金版实例提供 Dashboard 大盘功能。通过该功能,您可以查看实例、Vhost、Queue 和 Exchange 的各种指标数据,帮助您及时发现和定位问题。

  • 功能特点

1、多维度组合查询能力:可以从集群、Vhost、Exchange、Queue 多维度聚合查询数据;

2、排序能力:同一指标下,资源按照健康状况倒序排序,一眼看到集群中最有问题的资源;

3、丰富的指标数据:消息量、连接数、堆积量、关键接口请求数据等。

可观测消息轨迹

  • 应用场景

如果消息收发不符合预期,您可以通过查询消息轨迹,快速分析历史消息收发详情和定位问题原因,及时恢复业务。

  • 功能介绍

1、查询能力

  • 按 Queue 查询:查询一定时间范围内,Queue 上的所有消息的轨迹。适用于只知道消息发送到的 Queue,不知道发送消息时设置的 Message ID 的模糊查询场景。
  • 按 Message ID 查询:根据 Message ID 的精确查询指定消息。Message ID 设置为和业务相关的唯一 ID。
  • 按消息处理耗时:根据消息处理耗时(消息投递给消费者开始时间到消费者处理完成返回应答的时间)大于指定时间来查询消息轨迹。

2、轨迹内容

  • 查看生命周期的各阶段时间:消息到达时间、投递时间、应答时间、进死信时间等;
  • 查看消息流转链路信息:消息从生产者到 Exchange 到 Queue 到消费者的链路拓扑信息;
  • 查看生产者、消费者信息:IP 地址、账号 ID;
  • 查看失败原因:发送失败、消费失败原因、进死信原因等。

作者:文婷、不周

原文链接

本文为阿里云原创内容,未经允许不得转载。

猜你喜欢

转载自blog.csdn.net/weixin_43970890/article/details/125804891