听云高级技术经理任燕萍 - 听云平台业务数据实时处理及性能可视化

蔡书萱

2017/11/14 发布于 技术 分类

了解服务端应用之间的关系,对资源进行深度检查,找出修复方式,并通过数据可视化的方式将问题直观地展现出来,帮助快速分析、诊断,找到解决方案。演讲内容中也会涉及流数据处理和分析技术细节。

文字内容
1. 听云平台业务数据实时处理及 性能可视化 听云-任燕萍
2. 听云业务架构 功能: u 最终用户体验监控 u 全站溯源交易追踪 u 大数据行业基线对标 u 人工智能自动根因分析 特点: u 实时 u 自动 u 端到端
3. 听云Network 概述
4. 听云Network 数据 网络指标 基础页面下载时间 网络层时间 重定向时间 发出请求时间 总下载时间 DNS时间 建立连接时间 SSL握手时间 首包时间 客户端时间 内容下载时间 流量指标 总下载字节数 基础页面下载字节熟 基础页面下载速度 首屏下载字节熟 内容指标 页面对象数 首屏对象数 首屏时间 DOM元素个数 流媒体指标 监测时长 DNS时间 缓冲前准备时间 TCP连接时间 缓冲时间 再次缓冲时间 等待时间 首次播放时间 播放时间 总下载字节数 收到第一个包时间 内容下载时间 用户体验指数 比特率 页面流媒体首播时间 PING 延时 丢包率 其他 城市 运营商 监测点IP DNS服务器 目标IP 错误代码 内容错误 截屏 Ping TraceRoute
5. 听云Browser 概述 基于真实用户的浏览器网站性能监控 n 网络图片临摹改编,支持浏览器监控 n 支持微信,混合式App的HTML5页 面监控 n 监控需要验证登录的Web应用,如支 持购物流程 n 支持内网监控 n 提供业务访问数据分析,如用户分布, PV等
6. 听云Browser 数据 等待时间 吞吐率 错误率 用户体验指数 流媒体播放占比 流媒体总体访问量 流媒体错误率 首次缓冲耗时 缓冲次数 再次缓冲耗时 首次播放时长 播放时长 获取流媒体元素耗时 流畅度 流媒体指标 Stalled DNS 建连 SSL 首包 下载 状态码 页面URL Request Reponse 元素类型 HTML性能分解 服务器响应时间 排队耗时 网络耗时 回调时间 吞吐率 总耗时占比 传输数据量 Ajax指标 用户体验指标 Js错误 白屏时间 首屏时间 可交互时间 完全加载时 PV Js错误 js错误率
7. 听云APP 概述 您的App总有问题存在
8. 听云App 数据 崩溃 崩溃详情 崩溃轨迹 调用堆栈 上下文信息 交互分析 慢动作分析 慢动作详情 慢交互分解 内存 CPU 网络 主线程 子线程 网络请求据 响应时间 吞吐量 DNS时间 TCP时间 SSL时间 网络延时 首包时间 Socket 主机错误 HTTP错误 网络错误 ANR 卡顿详情 卡顿轨迹 主线程 上下文信息
9. 听云Server 概述 听云server是您服务端应用的私人医生 n 代码级定位性能问题 n 解决数据库性能差应用程序访问慢 n 代码报错 n API接口等性能问题
10. 听云Server-数据 NoSQL. 事 务. 听云server采集 数据. JVM 数据库 线程剖析
11. 数据流向 03 分析/存储 01 采集 02 接入 04 可视化
12. 听云Network 数据采集
13. 听云Browser 数据采集 Navigation Timing
14. 听云Browser 数据采集 Resource Timing
15. 听云iOS SDK 数据采集 网络 Agent NSURLConnection NSURLSession ASI webView swizzle Obic/runtime NSURLProtocol
16. 听云Android SDK 数据采集 Return Return Orig Func 编译时字节码注入,修改bytecode Nbs.enterMethod() 原始执行体 Nbs.exitMethod() 运行时 call 嵌入听云的sdk的代码前 运行时 call 嵌入听云的sdk的代码后
17. 听云Server 数据采集 p Java Agent基于JDK 提供的Instrumentation机制,在class文件被加载的时候,通过字节码技术, 动态对Framework、数据库、NoSQL、Web Service、组件等特定方法实施监控,从而获得方法 执行时间、数据库调用时间、NoSQL响应时间以及外部服务响应时间;并在这些时间超过一定阈 值时,抓取调用堆栈。
18. 听云Server Java探针原理 Application(Apache等) SAPI PHP Zend API PHP API PHP 扩展 Zend扩展 API Zend 引擎 听云的PHP探针也是一个PHP扩展,在Zend引擎循 环执行操作码的过程中追踪获得调用各类函数的 性能及错误信息。
19. 听云Server Java探针原理 已经、分析进程 程序 CLR 探察器 用户接口 ICorProfilerCallback ICorProfilerCallinfo 探察器DLL IPC机制
20. 听云Browser 数据流向 数据流向 数据采集 数据接入 分析存储 前端展示 预处理 数据 系统 聚合 JS SDK Nginx Flume Kafka 存储 查报 询表 引展 擎示 Mysql NBFS K,V数据库 监控/告警
21. 听云App 数据流向 数据流向 数据采集 数据接入 Ios SDK& Android SDK Kafk Dc- a fron tend Leve l 1 数据预处理 Dcwrap dubb o Kafka Level 2 存储 redis K,V数据库 数据存储 前端展示 数据 聚合 计算 dubbo NBFS 存储 Mysql 查报 询表 引展 擎示 GreenPlum 监控/告警
22. 痛点 l 最终用户体验无法得知 l 接口性能无法掌控 l 私有协议监控 l 用户投诉定位问题无从下手 l 客户投诉问题难以复现 l Docker集群部署,监控变的越来越难
23. 搭建监控体系-Network 页面监测 n 数据上报接口监控 n 探针下载监控 n 官网重要页面监控 n 模拟app上传数据 n 系统登录 n 高可用架构监控 事务监测 私有协议 n 私有协议监控 高可用监控架构
24. 搭建监控体系-Browser Report
25. 搭建监控体系-App
26. 搭建监控体系-Server dockerfile kubernetes Run.sh
27. 性能可视化-network
28. 性能可视化-Browser
29. 性能可视化-App
30. 性能可视化-Server
31. 价值 不使用 最终用户抱怨 问题开始 业务影响 客户接电话 判断问题 15 分钟 运维研发 修复 数小时 数天 数星期 使用 操作员收到告警 判断 运维研发 修复 创造价值 自动化运维 判断运维研发 修复 创造价值
32. 总结 听云业务 01 n 听云NETWORK n 听云BROWSER n 听云APP n 听云SERVER 03 n NETWORK 数据中心 n BROWSER 数据中心 n APP 数据中心 n SERVER 数据中心 后端架构 数据采集 02 n PC 节点 n JS AGENT n SDK n AGENT 搭建监控 04 n NETWORK(页面监控、事务监控、私有协议) n BROWSER(network报表、browser报表、app报表、server报表) n APP(掌上听云监控) n SERVER(后端架构监控) 05 n NETWORK n BROWSER n APP n SERVER 性能可视化
33. THANK YOU