支付宝钱包流量电量优化实践
,刘富康:阿里巴巴支付宝钱包开发工程师,经历并参与了支付宝钱包客户端框架1.0到3.0的演进,对客户端框架和动态加载技术有深刻理解。目前正在负责支付宝钱包监控体系搭建工作。
重点介绍支付宝钱包客户端基于客户端监控体系上,针对流量电量进行专项优化的实践经验。涉及监控日志采集、关键场景分析,流量熔断等内容。以下来分享精彩内容。
平台型移动客户端之痛
平台型移动客户端资源有限,包括它的cpu,它的内存,它的流量,它的电量等,在这样一个资源受限的设备上运行应用时环境是非常复杂的。
对于andriod来说,不能的版本,不同的厂商,兼容性处理也很棘手。
全民移动化,很多业务都在移动设备中开采,诞生了很多超级APP(微信,淘宝),战略的发展都在往平台化去发展,在这个平台上就运行了大量的业务。那这个平台就提供了沟通的服务等,监控也是平台的一部分。
客户端监控跟后端数据监控不一样,客户端要解决本身的问题,客户端在用户手里不可触达,环境复杂;客户端出现问题不可逆,需要在问题发生之前解决问题。
客户端全面监控体系
客户端全面监控体系由全面诊断,快速诊断,动态升级三个部分构成。
全面监控及时发现问题:监控指标来源于客户端,客户端监控日志上报给服务端;实时报警系统,数据采集上来后分析,分析出问题就要报警出来;多维度监控,上报体系灵活。
整个的监控在独立的进程中上传,为了不耗流量电量,采用一个灵活的采集策略配置,实时监控的依据是纵向横向的对比,数据的采集包括流量、电量、H5加载速度、RPC调用、启动速度等,它们的采集方式也不一样。
快速诊断,准确分析问题:面向切面编程,自动化用户行为录制,诊断日志记录和保存,实时推送诊断任务。
诊断日志越详细越好,采取编译期静态服务的方式织入,安全可靠,不依赖语言,不依赖平台,不依赖容器,在编译期覆盖第三方JAR包。图1为是否用AOP变成的一个对比,用AOP技术的在编译期就会把一些逻辑织入进去。
最后更新:2017-04-01 13:37:06