wiki:netspeed

移动网速优化项目

该项目主要是利用客户端SDK记录移动端访问网络数据的时间,发回功能魔方分析生成报表,为下一步网络优化提供数据基础。

监控范围两种模式:

一、面向全体用户监控模式(抽样)

通过向魔方发送相关指令,可以监测到某段时间内,按照地域、网络运营商、联网方式、URL4个维度查看页面加载时间及速度,

两种页面:第一,通过接口获取内容的页面,如APP首页列表页、图片等,可以统计到加载时间(从响应到加载完成)和速度;

第二,html页面,如文章/帖子/车系/车型/优惠等页面,只可统计到加载时间(从响应到加载完成);

应用启动后读抽样指令,如果读不到指令,缺省是不做记录

二、针对某特定机器的debug模式

具体需求为:
1、通过魔方发送相关指令,可以通过MAC地址来对某机器开启debug模式
2、在debug模式下,可以获取:

2.1、用户本次使用过程中发生的网络请求次数
2.1.1、获取每次数据响应的时间长(发送请求到接受到数据的时间差)
2.1.2、获取内容的网速(下载内容大小处于下载总共用时)
2.1.3、访问的接口URL

3、用户使用的网络类型以及提供服务的运营商

数据格式:

1,抽样指令

接口地址:  http://mga.imofan.com/service/netspeed.jsp
参数:

appKey:应用appKey
deviceId:ios是用openudid
mac: mac地址(可选)
region:地区信息,格式"省,市"
carrier: 运营商,如"cmcc" ,读不到可以为空
access: 访问方式, 如"wifi","gprs","hspa", 读不到可以为空

返回:

record:是否监控
max:一个session最大监控记录数
image:是否记录图片访问[[BR]] {"record":true,"max":500,"image":true}

  1. 数据记录格式

数据记录在SDK发送包里面,增加一项network

经过测试如果每次记录1000条数据,压缩后15k,大小可以接受,客户端改为传明细回来,格式

network": 
    [
       [0,"http://...../....", 20140601120130, "广东,广州”, “中国移动,wifi”,200, 40, 260],
       [0,"http://...../....", 20140601120130, "广东,广州”, “cmcc,gprs”,200, 40, 210],
       。。。。。
     ]
 

数据说明:

[0," http://...../....", 20140601120130, "广东,广州”, “cmcc,gprs”,200, 401, 210],
[type,url,时间,(省,市),(运营商,网络访问方式),httpcode, 大小(byte),时间(ms)]

type:0 单一文件http请求, 1 整个web页面请求

  • andriod webview 返回码取不到,传200回来