带你读《2022技术人的百宝黑皮书》——移动域全链路可观测架构和关键技术(4)

简介: 带你读《2022技术人的百宝黑皮书》——移动域全链路可观测架构和关键技术(4)

带你读《2022技术人的百宝黑皮书》——移动域全链路可观测架构和关键技术(4)https://developer.aliyun.com/article/1340966?groupCode=taobaotech


移动端opentracing可观测架构

全链路构成

 

 

image.png

(图5 端到端情况、详情场景分层图)

 

端到端现有链路长,端侧存在各类研发框架和能力,虽然后端调用链路明确,但从全链路视角看,并没有与端侧打通。以用户浏览详情动线为例,一次首屏打开,会触发奥创、MTOP(无线网关)、DX三个模块不同的调用时  序,不同的模块有各自的处理过程,不同阶段有不同的耗时和状态(成功、失败等);接着继续看滑动,可以看到模块的调用时序组合又不一样,因此不同场景下可以由若干要素随机组合,需要根据用户实际场景,划分若干维度来定义全链路:

 

image.png场景定义:一次用户操作为一个场景,如点击、滑动都是单独的场景,场景也可以是多个单个场景的组合。

image.png能力分层:不同场景,有业务类,框架类、容器类、请求类的调用,可以对每个领域进行分层。

image.png阶段定义:不同分层有各自的阶段。如框架类有4个本地阶段,而请求类可以包含后端服务端处理阶段。

image.png用户动线:一次动线由若干场景组成。

全链路,就是把复杂的大调用分解为有限个结构化的小调用,并且可以衍生出各种case:

 

image.png「单场景+单阶段」的组合全链路

image.png「单场景+若干分层+若干阶段」组合的全链路

image.png「若干场景+若干分层+若干阶段」组合的全链路


 

Falco-基于OpenTracing模型

 

全链路为了支持Logs + Metrics + Tracing 行业标准,引入分布式调用规范opentracing协议,在上述的客户端架构上进行二次建模(后续简称为Falco)。OpenTracing 规范是 Falco 的模型基础,以下不再列举,完整可参考OpenTracing设计规范,https://opentracing.io/docs/overview/。Falco定义了端侧领域的调用链追踪模型,主要表结构如下:

 

 

 

image.png

 

(图6 Falco数据表模型)

 

image.pngimage.pngspan公共头:黄色部分,对应OpenTracing规范的Span基础属性。                                   scene:对应OpenTracing的baggage部分,会从根span往下透传,存放业务场景,命名规则为「业务标识_    行为」。比如详情首屏为ProductDetail_FirstScreen、详情刷新为ProductDetail_Refresh。

image.pngimage.pngimage.pngimage.pnglayer: 对应OpenTracing的Tags部分,定义了层的概念,目前划分为业务层、容器层和能力层。处理业务逻辑的模块归属业务层,命名为business;提供视图容器归属容器&框架层,如DX、Weex都是,命名为frame- workContainer;仅提供一个原子能力的模块,归属能力层,命名为ability,如mtop、picture,层可应用于对同    层同能力的不同模块进行横向性能对比。                                                   stages:对应OpenTracing的Tags部分,表示一次模块调用包含的阶段。每一层基于领域模型划分了关键阶  段,目的是让同层的不同模块具备一致的对比口径,如DX和TNode对比,可以从预处理耗时、解析耗时、渲染 耗时衡量彼此优劣。比如预处理阶段名为preProcessStart,也可以自定义。                    module:对应OpenTracing的Tags部分,更多的是逻辑模块。比如     DX、mtop、图片库、网络库。Logs:对应OpenTracing的Logs部分,日志仅记录到TLog,不输出到UT埋点。

 

带你读《2022技术人的百宝黑皮书》——移动域全链路可观测架构和关键技术(5)https://developer.aliyun.com/article/1340964?groupCode=taobaotech

相关文章
|
17天前
|
运维 Kubernetes Cloud Native
云原生技术:容器化与微服务架构的完美结合
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术以其灵活性和高效性成为企业的新宠。本文将深入探讨云原生的核心概念,包括容器化技术和微服务架构,以及它们如何共同推动现代应用的发展。我们将通过实际代码示例,展示如何在Kubernetes集群上部署一个简单的微服务,揭示云原生技术的强大能力和未来潜力。
|
15天前
|
存储 分布式计算 关系型数据库
架构/技术框架调研
本文介绍了微服务间事务处理、调用、大数据处理、分库分表、大文本存储及数据缓存的最优解决方案。重点讨论了Seata、Dubbo、Hadoop生态系统、MyCat、ShardingSphere、对象存储服务和Redis等技术,提供了详细的原理、应用场景和优缺点分析。
|
17天前
|
监控 API 微服务
后端技术演进:从单体架构到微服务的转变
随着互联网应用的快速增长和用户需求的不断演化,传统单体架构已难以满足现代软件开发的需求。本文深入探讨了后端技术在面对复杂系统挑战时的演进路径,重点分析了从单体架构向微服务架构转变的过程、原因及优势。通过对比分析,揭示了微服务架构如何提高系统的可扩展性、灵活性和维护效率,同时指出了实施微服务时面临的挑战和最佳实践。
42 7
|
15天前
|
传感器 算法 物联网
智能停车解决方案之停车场室内导航系统(二):核心技术与系统架构构建
随着城市化进程的加速,停车难问题日益凸显。本文深入剖析智能停车系统的关键技术,包括停车场电子地图编辑绘制、物联网与传感器技术、大数据与云计算的应用、定位技术及车辆导航路径规划,为读者提供全面的技术解决方案。系统架构分为应用层、业务层、数据层和运行环境,涵盖停车场室内导航、车位占用检测、动态更新、精准导航和路径规划等方面。
66 4
|
16天前
|
Kubernetes Cloud Native 持续交付
云原生技术在现代应用架构中的实践与思考
【10月更文挑战第38天】随着云计算的不断成熟和演进,云原生(Cloud-Native)已成为推动企业数字化转型的重要力量。本文从云原生的基本概念出发,深入探讨了其在现代应用架构中的实际应用,并结合代码示例,展示了云原生技术如何优化资源管理、提升系统弹性和加速开发流程。通过分析云原生的优势与面临的挑战,本文旨在为读者提供一份云原生转型的指南和启示。
31 3
|
18天前
|
网络协议 数据挖掘 5G
适用于金融和交易应用的低延迟网络:技术、架构与应用
适用于金融和交易应用的低延迟网络:技术、架构与应用
44 5
|
16天前
|
运维 Kubernetes Cloud Native
云原生技术在现代应用架构中的实践与挑战####
本文深入探讨了云原生技术的核心概念、关键技术组件及其在实际项目中的应用案例,分析了企业在向云原生转型过程中面临的主要挑战及应对策略。不同于传统摘要的概述性质,本摘要强调通过具体实例揭示云原生技术如何促进应用的灵活性、可扩展性和高效运维,同时指出实践中需注意的技术债务、安全合规等问题,为读者提供一幅云原生技术实践的全景视图。 ####
|
20天前
|
Kubernetes Cloud Native 云计算
云原生技术深度解析:重塑企业IT架构的未来####
本文深入探讨了云原生技术的核心理念、关键技术组件及其对企业IT架构转型的深远影响。通过剖析Kubernetes、微服务、容器化等核心技术,本文揭示了云原生如何提升应用的灵活性、可扩展性和可维护性,助力企业在数字化转型中保持领先地位。 ####
|
22天前
|
存储 分布式计算 分布式数据库
风险数据集市整体架构及技术实现
【11月更文挑战第11天】在当今大数据时代,风险数据集市作为金融机构的核心基础设施之一,扮演着至关重要的角色。它不仅为银行、保险等金融机构提供了全面、准确的风险数据支持,还帮助这些机构实现了风险管理的精细化和智能化。本文将深入探讨一种基于大数据Lambda架构设计的风险数据集市整体架构,并详细介绍其底层实现原理及实现方式。
45 3
|
25天前
|
机器学习/深度学习 人工智能 自然语言处理
医疗行业的语音识别技术解析:AI多模态能力平台的应用与架构
AI多模态能力平台通过语音识别技术,实现实时转录医患对话,自动生成结构化数据,提高医疗效率。平台具备强大的环境降噪、语音分离及自然语言处理能力,支持与医院系统无缝集成,广泛应用于门诊记录、多学科会诊和急诊场景,显著提升工作效率和数据准确性。