消息队列 RabbitMQ 遇上可观测--业务链路可视化
简介: 本篇文章主要介绍阿里云消息队列 RabbitMQ 版的可观测功能。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;
- 查看失败原因:发送失败、消费失败原因、进死信原因等。

点击此处,进入官网了解更多详情~
消息队列 RabbitMQ 遇上可观测--业务链路可视化的更多相关文章
- .NET 开源工作流: Slickflow流程引擎高级开发(七)--消息队列(RabbitMQ)的集成使用
前言:工作流流程过程中,除了正常的人工审批类型的节点外,事件类型的节点处理也尤为重要.比如比较常见的事件类型的节点有:Timer/Message/Signal等.本文重点阐述消息类型的节点处理,以及实 ...
- 消息队列RabbitMQ业务场景应用及解决方案
目录 0. 博客参考 1. 背景 2. 技术选型 3. 消息队列的几个常见问题 4. 代码功能开发及测试 4.1 生产者 4.2 消费者 5. 源代码 6.补充:消息的顺序性 0. 博客参考 http ...
- (二)RabbitMQ消息队列-RabbitMQ消息队列架构与基本概念
原文:(二)RabbitMQ消息队列-RabbitMQ消息队列架构与基本概念 没错我还是没有讲怎么安装和写一个HelloWord,不过快了,这一章我们先了解下RabbitMQ的基本概念. Rabbit ...
- ASP.NET Core消息队列RabbitMQ基础入门实战演练
一.课程介绍 人生苦短,我用.NET Core!消息队列RabbitMQ大家相比都不陌生,本次分享课程阿笨将给大家分享一下在一般项目中99%都会用到的消息队列MQ的一个实战业务运用场景.本次分享课程不 ...
- 消息队列rabbitmq/kafka
12.1 rabbitMQ 1. 你了解的消息队列 rabbitmq是一个消息代理,它接收和转发消息,可以理解为是生活的邮局.你可以将邮件放在邮箱里,你可以确定有邮递员会发送邮件给收件人.概括:rab ...
- 消息队列rabbitmq rabbitMQ安装
消息队列rabbitmq 12.1 rabbitMQ 1. 你了解的消息队列 生活里的消息队列,如同邮局的邮箱, 如果没邮箱的话, 邮件必须找到邮件那个人,递给他,才玩完成,那这个任务会处理的很麻 ...
- C#中使用消息队列RabbitMQ
在C#中使用消息队列RabbitMQ 2014-10-27 14:41 by qy1141, 745 阅读, 2 评论, 收藏, 编辑 1.什么是RabbitMQ.详见 http://www.rabb ...
- node使用消息队列RabbitMQ一
基础发布和订阅 消息队列RabbitMQ使用 1 安装RabbitMQ服务器 安装erlang服务 下载地址 http://www.erlang.org/downloads 安装RabbitMQ 下载 ...
- (一)RabbitMQ消息队列-RabbitMQ的优劣势及产生背景
原文:(一)RabbitMQ消息队列-RabbitMQ的优劣势及产生背景 本篇并没有直接讲到技术,例如没有先写个Helloword.我想在选择了解或者学习一门技术之前先要明白为什么要现在这个技术而不是 ...
- nodejs操作消息队列RabbitMQ
一. 什么是消息队列 消息队列(Message Queue,简称MQ),从字面意思上看,本质是个队列,FIFO先入先出,只不过队列中存放的内容是message而已.其主要用途:不同进程Process/ ...
随机推荐
- python的替换函数strip(),replace()和re.sub()实例分析
前记: python是一个非常好用的语言,能够帮忙处理很多日常的耗费体力的事情.今天做一个脚本的时候,遇到了python替换的问题,这里就梳理一下知识点吧. 概念: 1.replace() 基本用法: ...
- c语言随笔
c语言随笔 整型数据类型 unsigned int [signed] int [signed] short [int] unsigned long long [int] // long long 为c ...
- 通过socket进行网络通信(服务端)
声明:此文只是为自己方便理解,做了一些具象的比喻和假设,并不符合客观事实,谨慎阅读! 在一台主机中, 两个进程想要通信可以通过一个管道(文件):一个从管道的一端写,一个从另一端读 , 然而管道是半 ...
- 22_播放器之使用SDL显示YUV视频
简介 使用SDL实现简单的YUV播放器. 这里还需要使用到像素格式和计算图片大小,这两个我们直接使用ffmpeg来实现,因此需要使用ffmpeg的libavutil/avutil.h和libavuti ...
- ModuleNotFoundError: No module named xxx 的原因和解决办法(附带新大陆)
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明 本文作为本人csdn blog的主站的备份.(Bl ...
- String内存模型和Java常用方法
一.String内存模型 1.直接赋值创建string对象内存原理: StringTable(串池):字符串常量池,用来存储字符串,只能是在直接赋值中使用才会存在串池当中(JDK7前串池是在方法区里面 ...
- View事件机制源码分析
目录介绍 01.Android中事件分发顺序 02.Activity的事件分发机制 2.1 源码分析 2.2 点击事件调用顺序 2.3 得出结论 03.ViewGroup事件的分发机制 3.1 看一下 ...
- 崩溃bug日志总结3
目录介绍 1.1 OnErrorNotImplementedException[ Can't create handler inside thread that has not called Loop ...
- 香港Azure/.NET俱乐部第一次聚会纪实 - WPF在金融业的商业价值
香港Azure/.NET俱乐部第一次聚会于2019年12月29日在香港上环地铁站星巴克举行. 香港Azure/.NET俱乐部的定位是:以商业价值为导向. 基于这个定位,可以推导出如下准则: 面向大型企 ...
- SQL调优系列--数据严重倾斜的连接优化
背景 对于两个大表关联的场景,如果过滤条件的列值,存在高度倾斜,可以考虑根据反向滤值,进行过滤操作,减少连接的CPU时间. 数据准备 -- 状态表 tp01_state 记录 大表tp01 记录的多种 ...