带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(8)

本文涉及的产品
应用实时监控服务-应用监控,每月50GB免费额度
应用实时监控服务-用户体验监控,每月100OCU免费额度
简介: 带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(8)

带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(7)https://developer.aliyun.com/article/1340937?groupCode=taobaotech


挑战:多容器内嵌页面

 

在手淘中有各种各样的跨端容器框架,如 weex 等。存在一个页面上多种容器并存的情况,容器与容器之间,数据如何兼容,APM 提出了自身的仲裁方案。

 

在店铺一个页面中,有可能存在多种框架混合使用的情况,举个例子,可以用 WebView 实现一个广告推荐,可以Weex 渲染出整个页面。

 

如果每一个容器直接将自己的页面加载时间点通过一个接口直接打进来,APM 选取哪一个作为页面真正的加载结束时间戳呢?如果选取最小的时间戳,如果对应的 View 不是页面主要元素,那么这个值比体感加载时长小,如果选取最大的时间戳,就有可能偏慢。

 

其实在 Native 角度,每一个容器只是 View 树上的一个节点,APM 只需要关心这个子 View 是否加载完成,然后使用页面加载算法计算(8060算法),就可以知道整个页面是否加载完成。

 

 

那么问题就简化成如何知道这个子 View 是否加载完成。当前 APM 支持对 View 打标,当 View 没有加载完成的时候,就会打上没有加载完成的 tag,完成页面加载就会打上完成的 tag。由于容器知道自己的加载状态,就只需要在合适的时候,给自己的 View 打上合法的 tag 即可。

 

由于 APM 在遍历 View 树的时候,一旦发现 View 打上了 tag,就不再往下遍历,直接确定了当前 View 的状态, 起到了数据仲裁的效果

 

写在最后

 

对于 APM 页面加载耗时校准而言,目前 APM 还只是向前走了一小步。在最新的 APM 自动化页面加载耗时计算中,剔除了对用户页面加载体验无效的元素,聚焦页面加载体验中的核心元素,既给了业务相对的自由度,又达到了一定的加载体感准确性。

 

团队介绍

 

淘宝Android体验技术团队,以打造极致的移动用户体验为愿景,立志于研发体验相关技术、中间件,以及提供产品化解决方案,一站式为淘宝及其他移动应用核心场景体验赋能。团队在应用级优化有丰富的经验,并深耕于系统级能力,目前已有多个成熟技术方案服务于大促会场,应用启动,外链拉端等,已建立全链路的线上性能监控体系,探索非确定性性能问题的监控及排查能力,我们长期招聘志同道合的伙伴,欢迎有志人士加入。

相关实践学习
通过云拨测对指定服务器进行Ping/DNS监测
本实验将通过云拨测对指定服务器进行Ping/DNS监测,评估网站服务质量和用户体验。
相关文章
|
监控 Android开发 UED
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(1)
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(1)
192 0
|
Web App开发 移动开发 前端开发
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(7)
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(7)
153 0
|
算法 数据处理 UED
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(4)
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(4)
113 0
|
数据处理
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(6)
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(6)
112 0
|
算法 Android开发 容器
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(2)
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(2)
153 0
|
算法 UED
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(3)
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(3)
105 0
|
数据处理 Android开发
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(5)
带你读《2022技术人的百宝黑皮书》——APM 页面加载耗时校准(5)
124 0
|
1月前
|
移动开发 监控 Android开发
Android & iOS 使用 ARMS 用户体验监控(RUM)的最佳实践
本文主要介绍了 ARMS 用户体验监控的基本功能特性,并介绍了在几种常见场景下的最佳实践。
|
3月前
|
运维 监控 数据可视化
ARMS的微服务监控
【8月更文挑战第23天】
74 6
|
6月前
|
监控 Java 索引
APM Server监控
APM Server监控