带你读《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

相关文章
|
11天前
|
机器学习/深度学习 存储 人工智能
RAG系统文本检索优化:Cross-Encoder与Bi-Encoder架构技术对比与选择指南
本文将深入分析这两种编码架构的技术原理、数学基础、实现流程以及各自的优势与局限性,并探讨混合架构的应用策略。
66 10
RAG系统文本检索优化:Cross-Encoder与Bi-Encoder架构技术对比与选择指南
|
2月前
|
存储 移动开发 JavaScript
快应用推广连接底层技术与架构以及如何结合自身系统分销的推广逻辑和技术对接-优雅草卓伊凡|果果|Ant
快应用推广连接底层技术与架构以及如何结合自身系统分销的推广逻辑和技术对接-优雅草卓伊凡|果果|Ant
62 4
快应用推广连接底层技术与架构以及如何结合自身系统分销的推广逻辑和技术对接-优雅草卓伊凡|果果|Ant
|
2月前
|
小程序 安全 JavaScript
构建即时通讯APP内的小程序生态体系:从架构设计到技术实现-优雅草卓伊凡
构建即时通讯APP内的小程序生态体系:从架构设计到技术实现-优雅草卓伊凡
102 1
构建即时通讯APP内的小程序生态体系:从架构设计到技术实现-优雅草卓伊凡
|
2月前
|
人工智能 运维 安全
MCP协议深度解析:客户端-服务器架构的技术创新
作为一名长期关注AI技术发展的博主摘星,我深刻感受到了MCP(Model Context Protocol)协议在AI生态系统中的革命性意义。MCP协议作为Anthropic公司推出的开放标准,正在重新定义AI应用与外部系统的交互方式,其基于JSON-RPC 2.0的通信机制为构建可扩展、安全的AI应用提供了坚实的技术基础。在深入研究MCP协议规范的过程中,我发现这一协议不仅解决了传统AI应用在资源访问、工具调用和上下文管理方面的痛点,更通过其独特的三大核心概念——资源(Resources)、工具(Tools)、提示词(Prompts)——构建了一个完整的AI应用生态系统。MCP协议的客户端-
205 0
MCP协议深度解析:客户端-服务器架构的技术创新
|
2月前
|
缓存 负载均衡 NoSQL
基于微服务架构的唯品会商品详情接口技术解析
本文介绍了唯品会电商平台商品详情接口的微服务化实现方案,涵盖架构设计、代码示例与性能优化策略。采用FastAPI构建服务,结合Redis缓存、异步处理、Nginx负载均衡等技术,实现高并发、低延迟的接口性能。
|
2月前
|
数据采集 监控 Cloud Native
301重定向:当技术决策成为架构命运的十字路口
本文深入探讨了HTTP重定向背后的隐藏技术债务,揭示其对系统架构、性能和维护的深远影响。内容涵盖重定向的常见陷阱、性能损耗、链式跳转风险以及现代架构中的挑战,并提供工程师在实施重定向时必须思考的关键问题与实践建议,帮助构建更稳健、可维护的系统演化路径。
59 2
|
2月前
|
数据采集 机器学习/深度学习 自然语言处理
智能风险管理的技术架构:2025从数据采集到自主决策的全链路解析
本文系统梳理了项目风险管理的技术演进历程,从文档驱动到智能化阶段,深入解析各时期关键技术与工具架构,并结合实践案例提出前瞻性实施策略,助力项目管理专业人士构建智能风险管理体系。
120 2
|
2月前
|
人工智能 数据可视化 Java
什么是低代码(Low-Code)?低代码核心架构技术解析与应用展望
低代码开发正成为企业应对业务增长与IT人才短缺的重要解决方案。相比传统开发方式效率提升60%,预计2026年市场规模达580亿美元。它通过可视化界面与少量代码,让非专业开发者也能快速构建应用,推动企业数字化转型。随着AI技术发展,低代码与AIGC结合,正迈向智能化开发新时代。

热门文章

最新文章