限时领|《AI 百问百答》专栏课+实体书(包邮)! 了解详情
写点什么

全流程监控治理平台

  • 2020-03-22
  • 本文字数:1774 字

    阅读完需:约 6 分钟

全流程监控治理平台

系统整体介绍

环路监控系统,是以用户行为为维度,对系统和整个业务流程进行链路监控的平台。避免系统问题被运营客诉反馈,被动应对,它帮助我们主动发现业务异常。每一个流程内的节点在发生挤压、停留、重试时,提供精准监控并实时报警,给我们争取解决问题的时间。并且可以对业务发生的金额进行把控,在业务发生资损时第一时间控制住,在金额上提供日、周、月各维度全景图展示,同时可在高风险金额节点重点把控。后续,系统可在监控到节点异常时向外部系统发送消息,收到消息的系统可自动进行降级、锁定、追损、拦截等操作。主要有以下五个亮点:


一、清晰展示业务流程链路,业务链路中的每一个核心节点都有完整的数据展示,流量、重试量、流转方向、红绿灯等。


二、精准定位数据滞留节点,数据通透性、流转性都清晰的展示在链路节点上,当发生滞留时能马上实时知道数据走向与滞留数量,并可以下钻到具体滞留用户。


三、快速抽取异常流程数据,当发生异常需要紧急对用户进行处理时,可以将异常数据快速定位,查出具体哪些人受到影响,以及影响范围,事态严重程度等信息。


四、准确溯源所属服务实例,业务异常最终可定位到具体的运行机器,方便底层研发查询使用,快速做出判断,同时找到根本原因是研发、运营、还是外部问题等。


五、灵活监控运算公式配置,系统内公式引擎支持用户自主配置监控公式,可监控到:滞留、重试、比率、数量、金额等,同时可以跨业务模版进行金额出入比对监控,为后续资金对账做准备。

页面展示

下面介绍一下两个重点页面:

一、数据监测

页面清晰地展示需要监控的每个流程:整体指标、节点数据等,每个绿色方块表示流程中的节点,里面有节点信息和数据,当方块颜色变黄(如下图)就表示此节点有数据滞留,里面数据也将精确展示滞留值,非常直观易懂。


二、数据趋势

数据趋势可以查看各个时间节点数据量变化,对于急速出现的波峰波谷有据可查。同时自定义的公式配置也同样可以展示数量变化的一个走势图,这样能更加方便用户查询问题。



系统架构

一、环路监控系统架构 V1.1.0

被监控的业务系统通过接入数据采集中间件,进行收揽业务数据,系统按照定义的业务链路进行存储,同时为了保证数据不会错位记录,每一个业务节点都采用主辅串联结构方式进行存储。


二、扩展架构

为了能让系统更加安全可靠且扩展性强,我们还独立开发了工具型中间件:


1、缓存多读多写中间件,融合 JimDB、R2M,可通过实现 RwxExtAuto 类进行更多控制,包括:配置主读、同步写、异步写、写关闭、读开启、读关闭(用于刷新缓存)、配置监控等。



2、RPC 路由,可以进行 JSF 接口路由,将数据库路由前置,减少数据库连接数,支持横向扩展。


  • 应用场景一:拆分数据库连接数


目前我们所有分库分表的应用,每一台数据库都被所有机器实例链接,每一个被路由的用户每次都可能被不同的实例链路引入到所属该用户的指定库表上。但在 618 和双 11 大促在进行机器扩容时,每一台数据库都将要被更多的机器实例进行链接,在达到系统瓶颈后很难再进行扩展。


环路监控开始接入约 5 个月时间,累计进入数据量约有 20+亿数据,为了能保证后续接入更多的业务流程而不影响系统性能,我们在 RPC 端进行路由,将数据库路由前置,减少数据库连接数,提升系统性能。下图为拆分前后的对照图:



  • 应用场景二,拆分内存横纵扩展


在业务系统中,有很多应用到系统内存的地方,例如环路监控、营销活动、营销文案等,在系统启动时需将信息加载到内存,通过调用内存数据提升系统性能。但单台机器可加内存有限,当达到一定数据容量后会出现性能下降情况。这时就可使用 RPC 路由,将内存进行分组,把数据按照一定的路由方式存放到不同的分组模块内,大大降低单台机器的内存占用。


由原来的 N 台机器,每个机器都存放 200M(假设)拆分为 Y 组机器,每组里有 M 台机器,每组机器拆分内存为 200M/Y,减轻单台机器内存压力,提高内存可用率。下图为拆分前后的对照图:


后续规划

接下来我们团队会持续提升系统易用性,让使用者更加方便的查询问题;并将数据逐步接入量化部门,最终找到用户为什么滞留到此?如何去引导解决问题等优化。


后续还将努力把系统共享出来,推广给需要的人。期待环路监控能成为使用者手中的利器,达到将风险控制在客诉之前,将资损控制在最低的目标,为客户提供更好的体验。欢迎感兴趣的京东同事一起沟通,可联系邮箱:ringroad@jd.com ,或直接咚咚付政委、乔瑞刚


2020-03-22 20:491990

评论

发布
暂无评论
发现更多内容

从新零售、物流到广告,搞定指标中台就这么简单!

Kyligence

数据分析 指标管理 指标中台

数据结构第七章排序,期末不挂科指南

梦想橡皮擦

数据结构 9月月更

【web 开发基础】php 开发基础快速入门 (4)-PHP常量详解

迷彩

php 常量 9月月更 魔术常量

Python应用之九九乘法表

芯动大师

9月月更 九九乘法表的实现 变量和循坏的应用

Python应用之求100以内的奇数和

芯动大师

9月月更 变量和循坏的应用 递归求和

九月书单

图灵教育

科普 计算机 新书

Spring Security 介绍中的 servlet 和 reactive

HoneyMoose

Python之如何判断闰年

芯动大师

9月月更 判断闰年 format格式化字符串

Java中synchronized关键字到底怎么用,这个例子一定要看!

wljslmz

Java synchronized 9月月更

云渲染比自己的电脑好用太多,这4个因素要考虑

Finovy Cloud

人工智能 云计算 渲染 云渲染

【kafka异常】使用Spring-kafka遇到的坑

石臻臻的杂货铺

Kafk 9月月更

leetcode 226. Invert Binary Tree 翻转二叉树(简单)

okokabcd

LeetCode 数据结构与算法

VUE 数据分页

HoneyMoose

2022-09-29:在第 1 天,有一个人发现了一个秘密。 给你一个整数 delay ,表示每个人会在发现秘密后的 delay 天之后, 每天 给一个新的人 分享 秘密。 同时给你一个整数 forg

福大大架构师每日一题

算法 rust 福大大

数据结构第六章查找,期末不挂科指南

梦想橡皮擦

数据结构 9月月更

【编程实践】利用Python看看那些QQ好友都在QQ空间发了啥

迷彩

词云图 selenium Python爬虫 9月月更 结巴分词

帮助中心案例分析|师爷,给我解释解释什么叫降本增效?

Baklib

降本增效 帮助中心

盘点团队在线协作文档工具

Baklib

在线协作文档

React 新提案 useEvent 已死?不,它将涅盘重生。

清秋

React useEvent RFC 提案

万字详文,剖析企业数字化的降“本”增效

阿里技术

数字化 降本增效

也谈“我们开发者根本不想做运维!”

愚夫一得

DevOps 语言 & 开发 文化 & 方法 技术中台 运维‘

Java中只有8大数据类型吗?看了本文,你会收获颇丰

wljslmz

Java 数据类型 9月月更

还不了解堆栈和队列吗?数据结构最基础、最重要的概念必须掌握!

wljslmz

数据结构 堆栈 队列 9月月更

联通研究院霍龙社博士深度解析“AI项目到底适不适合开源”

OpenI启智社区

人工智能 OpenI启智社区 AI开源 CubeAI智立方

【web 开发基础】php 开发基础快速入门 (3)-PHP程序符号标记和程序注释的使用及空白符详解

迷彩

php开源 9月月更 web开发基础

Baklib+伙伴云+企微会话存档,打造伙伴云帮助中心运营体系

Baklib

产品经理必看的高效产品文档撰写指南

Baklib

产品 产品经理 文档

OptaPlanner快速入门-helloworld

积木编程

数据结构第五章图,期末不挂科指南

梦想橡皮擦

9月月更

VolareFinance 测试网教程(更新)

鳄鱼视界

【云原生 | 从零开始学Kubernetes】十三、k8s的容器探测以及启动探测

泡泡

云计算 容器 云原生 k8s 9月月更

全流程监控治理平台_文化 & 方法_京东数字科技产业AI中心_InfoQ精选文章