17Q4客户端改进优化

客户端基础服务架构

基础能力
base: 工具类
webview: 强交互能力的webview容器
RN kit/minions: RN基础库
Push: 推送基础库
Statistics: 数据统计基础库
公共组件
XDesign: xsl UI公共组件,Toast、Loading、Alert……
MediaX: 图片、视频、音频等多媒体处理库
性能监控 Hydrophone:网络监控、内存、CUP使用监控
控制总线 OceanCurrent:云控制开关,组件插拔、动态加载时机控制,根据机型、系统版本、时间、网络环境等条件动态控制监控、数据分析等能力。

Gradle 依赖模式优化

针对不同库引入 implemtation、api、runtimeOnly、CompileOnly 四种依赖模式,优化后接入业务线数据对比:

React Native页面启动速度

实现多通道单实例缓存后加载时间分布如下: 用户体系重复加载性能数据 :

监控模块 (Hydrophone)

Real-time application performance managment SDK for app`s preformance.
The features provided include network monitor, CPU availability, webview monitor, DNS hijacking,etc..

Support

  • HttpURLConnection
  • Android HttpClient
4.0
  • Apache HttpClient ( > 4.0)
  • Volley+OkHttpClient
  • OkHttp
  • Retrofit
  • WebView

After Integrate

Android SDK App Size
- app size increase about 300KB.
- http request takes 10ms longer
- CPU use 27.73% more
- Memory use 0.52% more
- Battery use 4.6% more

Http performance index

  • Requests per minute
  • HTTP Error Rate
  • Request Error Rate
  • Http First Data Packet Time Cost
  • App Request Ratio

口袋监控数据:

周平均响应时间:1747ms
网络错误率: 3.19%, HTTP错误率:0.58%
响应最慢主机

张鹏宇

继续阅读此作者的更多文章