写点什么

UEM 系列(二)初识 UEM“探针”技术

  • 2020-02-13
  • 本文字数:1027 字

    阅读完需:约 3 分钟

UEM系列(二)初识UEM“探针”技术

本篇是 UEM 系列的第二篇,今天让我们一起来初识一下 UEM 当中的"探针"技术。欢迎大家访问以下链接来阅读我们 UEM 系列以往的文章。


链接:https://www.toutiao.com/i6600983314784322056/


1、 UEM 核心功能


用户体验一般分为移动应用体验(UEM App)和浏览器应用体验(UEM Web)两部分。对移动应用的用户体验支持,国内外很多厂商的产品都较为成熟和完善,大家在网上能够找到很多可以参考的项目,UAVStack 开源项目目前主要关注于面向浏览器应用的用户体验。


一般来说,UEM 的核心功能包括以下内容:



2、 "探针"技术捕获数据解密


UEM 的核心在于浏览器探针,通过自动注入到监测网页的 JS 代码,对实际用户访问的网页性能数据进行全样本采集和分析,找到影响用户体验问题本源,帮助用户持续优化 Web 应用性能。


浏览器探针的作用在于以下几点:


  1. 采集浏览器基本信息

  2. 采集页面性能数据(Navigation Timing API)

  3. 采集 AJAX 性能数据+请求/响应数据

  4. 采集 JS 错误数据(包括:出错页面或脚本 URL,引用页面 URL,Error Message,错误位置:行号,列号,等等)

  5. 采集页面追踪数据(Resource Timing API)

  6. 将捕获的数据上传到 UEM Server,便于进行后续的存储、多维度分析、预警和优化等


浏览器探针是根据浏览器状态来采集页面性能数据的。每次页面请求,当获取到 onload 事件结束,则以事件结束时间定义为页面完成时间。当有异步请求再次加载内容,那么这些异步请求记录在 AJAX 数据当中。基于采集到的数据,可以得到以下页面性能指标:



基于这些指标,页面加载流程的分解和可视化将会变得十分简单。


3、 页面加载流程可视化



页面加载流程可视化是 UEM 数据统计的一个重要手段,是 UEM 成果的通俗展示方式。上图是页面加载流程可视化的一个示意图。上述页面性能数据是实时上传的,但数据上传分四个时机:整个页面加载完成后上传、离开页面时上传、发生 JS 错误时上传和有 AJAX 请求时上传。此外,浏览器探针是自动注入到监测网页的,UEM Server 会监听应用服务器的输出,当用户开启自动注入功能,UEM Server 会在应用服务器的输出函数内自动注入 UEM 的浏览器探针,具体实现方式将在以后的分享中详细介绍。通过大量的实验室数据对比,自动注入 UEM 浏览器探针对服务器性能几乎无影响。


本文主要目的是让读者对 UAVStack 的 UEM 和浏览器探针的作用有一个整体的认识,具体的实现将在以后的分享中详细介绍,敬请期待,同时欢迎大家继续关注 UAVStack 官方微信群,相信您一定会有收获!


本文转载自宜信技术学院网站。


原文链接:


2020-02-13 21:47849

评论

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

【1分钟调研赢好礼】HarmonyOS Connect 视频课堂用户反馈问卷

HarmonyOS开发者

HarmonyOS

对话龙智专家,共探DevSecOps实践难点

龙智—DevSecOps解决方案

DevOps DevSecOps

比特币挖矿与源码解析

恒生LIGHT云社区

比特币 区块链 挖矿

Kotlin Maps:五个基本函数

坚果

kotlin 28天写作 12月日更

被灵魂问倒:这个BUG为什么没测出来?

华为云开发者联盟

测试 bug 文档 测试用例 测试工程师

GaussDB(DWS)中共享消息队列实现的三大功能

华为云开发者联盟

线程 数据同步 GaussDB(DWS) 共享消息队列 共享消息

Kubernetes 集群无损升级实践

vivo互联网技术

容器 云原生 服务器集群 Kubernetes 集群

龙智宣布与ConnectALL成为合作伙伴 进一步提升DevOps解决方案水平

龙智—DevSecOps解决方案

DevOps ConnectALL 价值流 价值流管理

【征集令】寻找2022年鸿蒙智联“出行新爆款产品”

HarmonyOS开发者

HarmonyOS

Android 8.0 下载安装进入【安装未知应用】页面,两步简化一步

阿策小和尚

28天写作 Android 小菜鸟 12月日更

从 WAN 到 SD-WAN 边缘设备的网络架构

devpoint

TLS ssl SD-WAN 12月日更

netty系列之:netty对SOCKS协议的支持

程序那些事

Java Netty 程序那些事 SOCKS 12月日更

容器技术正在颠覆传统,重构整个软件世界

巨子嘉

容器 云原生

Redisson:这么强大的实现分布式锁框架,你还没有?

华为云开发者联盟

redis 分布式 分布式锁 可重入锁 Redisson框架

龙智第四次荣登“2021上海软件和信息技术服务业高成长百家”名单

龙智—DevSecOps解决方案

上海软件和信息技术服务业

19《重学JAVA》--集合(一)

杨鹏Geek

Java25周年 28天写作 12月日更

【LeetCode】在 D 天内送达包裹的能力Java题解

Albert

算法 LeetCode 12月日更

前端开发之JS中filter()的使用

@零度

JavaScript 前端开发

即构科技 RTC 实践与深度解析 | 内容合集

ZEGO即构

音视频 RTC 内容合集 技术实践 技术专题合集

Prometheus Exporter (三十二)Varnish Exporter

耳东@Erdong

Prometheus 28天写作 exporter 12月日更 Varnish

读《思辨与立场》-07思维的标准

wood

28天写作 批判性思维 思辨与立场

Go语言逆向技术:常量字符串

华为云开发者联盟

字符串 go语言 字符 逆向技术 常量字符串

10个比较不错的 JavaScript 库

编程江湖

JavaScript 前端开发

实用机器学习笔记十九:模型验证

打工人!

人工智能 机器学习 深度学习 学习笔记 12月日更

COG云原生优化遥感影像,瓦片切分的最佳实践

华为云开发者联盟

云原生 遥感影像 瓦片切分 云上遥感影像文件 华为云地理遥感平台

Hive查询的18种方式

编程江湖

大数据 hive

建木持续集成平台v2.1.0发布

Jianmu

DevOps CI/CD 开源社区

书单 | “实战派”系列,每一本都是学好用好一门技术的“航空母舰”

博文视点Broadview

以 Vuex 为引,一窥状态管理全貌

杨成功

JavaScript Vue 大前端 vuex

Java开发Excel数据导入mysql的实用小技巧

@零度

Java MySQL

跟着动画学Go数据结构之选择排序

宇宙之一粟

golang 数据结构 选择排序 12月日更

UEM系列(二)初识UEM“探针”技术_行业深度_谢知求_InfoQ精选文章