手淘Native治理

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 手淘Native治理 潘文超(开风) 阿里巴巴 测试开发专家 www.top100summit.com 主办方:
2. 个人简介 2014.03~至今 2012.11~2014.03
3. 案例介绍 APP Java层 java crash JNI Native层 本次带来手淘Native治理经验分享。 native crash
4. 手淘Android的crash现状——找方向 java crash native crash native crash是java crash的6倍 native crash是瓶颈,需要突破
5. native crash治理挑战——难 突破native crash,当前挑战有哪些? • 聚合不不准 • crash堆栈不不全 native crash挑战 • 符号化信息缺失 • 线下提前规避⼿手段缺失
6. native crash治理核心问题是什么?——找抓手 sig6、sig11是主要的崩溃类型 signal 6 signal 11 结论:大部分crash原因是因为内存
7. 如何治理Native内存——调研业界 维度\产品 malloc debug AddressSanitizer memhook(UC) 是否需要root 需要 需要 需要 功能支撑广度 野指针、内存泄漏漏、内存崩溃等 野指针、堆栈缓冲区溢出、 全局缓冲区溢出、内存泄漏漏等 检测内存泄漏漏 堆栈能力 有 有 有 性能 差 好 不不详 使用成本 ⾼高 ⾼高 ⼀一般 开发了Native Finder,希望能彻底治理好手淘Native问题
8. 治理技术方案
9. Native治理过程 治理大量问题 1 5 治理初见成效 Native 发现根因 发现根本问题 Native标准化 制定标准 Monkey驱动 2 Monkey线下驱动 4 3 线上灰度 用户真实场景crash复现
10. Native治理过程 治理大量问题 1 5 治理初见成效 Native 发现根因 发现根本问题 Native标准化 制定标准 Monkey驱动 2 Monkey线下驱动 4 3 线上灰度 用户真实场景crash复现
11. Native工程标准化 库迁移 重复so治理 静态卡口 符号化so
12. Native治理过程 治理大量问题 1 5 治理初见成效 Native 发现根因 发现根本问题 Native标准化 制定标准 Monkey驱动 2 Monkey线下驱动 4 3 线上灰度 用户真实场景crash复现
13. Native治理——Monkey驱动 URL来源 独立URL crash URL堆 核心流程URL monkey 检测插件 产出 报告 堆栈信息 检测日志 算法规则 so维度日志 native报告
14. Native治理过程 治理大量问题 1 5 治理初见成效 Native 发现根因 发现根本问题 Native标准化 制定标准 Monkey驱动 2 Monkey线下驱动 4 3 线上灰度 用户真实场景crash复现
15. Native治理——线上灰度 APP SDK Lite版 APP 外灰 用户 产出 报告 crash 上报 数据可视化报告 内存结构信息
16. Native治理过程 治理大量问题 1 5 治理初见成效 Native 发现根因 发现根本问题 Native标准化 制定标准 Monkey驱动 2 Monkey线下驱动 4 3 线上灰度 用户真实场景crash复现
17. Native治理——发现根因 crash 分析 累加泄漏
18. Native Finder沉淀——检测项 ・内存检测项 共沉淀8项内存检查 ・fd文件句柄检测项 共沉淀6项fd检查
19. Native治理——本地模式 APP SDK APP 本地操作复现 崩溃信号 产出 报告 监听 crash上报 数据可视化报告 内存结构化信息
20. Native治理过程 治理大量问题 1 5 治理初见成效 Native 发现根因 发现根本问题 Native标准化 制定标准 Monkey驱动 2 Monkey线下驱动 4 3 线上灰度 用户真实场景crash复现
21. Native治理结果 18+问题 crash率 初⻅见成效
22. 案例总结 根因分析 动静结合 线上线下联动
23. 展望&下一步规划 H5管控 常态化卡⼝口 堆栈能⼒力力 Native Finder 平台化
24. Q&A

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.139.0. UTC+08:00, 2024-12-23 07:59
浙ICP备14020137号-1 $Map of visitor$