| Version 9 (modified by liaojiaohe, 12 years ago) (diff) |
|---|
移动网速优化项目
该项目主要是利用客户端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
参数:
appId:应用id
deviceId:ios是用openudid
region:地区信息,格式"省,市"
carrier: 运营商,如"cmcc" ,读不到可以为空
access: 访问方式, 如"wifi","gprs","hspa", 读不到可以为空
返回:
record:是否监控
max:一个session最大监控记录数
debug:是否采用debug方式
{"record":"true","max":500}
- 数据记录格式
数据记录在SDK发送包里面,增加一项network
经过测试如果每次记录1000条数据,压缩后15k,大小可以接受,客户端改为传明细回来,格式
network": {
"http://...../....":[20140601120130,"广州”,“wifi”,200, 40.1,0.2],
"http://...../....":[20140601120130,"广州”,“wifi”,200, 40.1,0.2],
。。。。。
}
旧讨论结果 数据带3级分类,1级:日期,2级:地区,3级:网络情况
"network": {
"20140601":{
"上海": {
"cmcc,gprs" : {
"http://...../....": [4, 5, 1, 650.37, 34.1],
"http://.....": [3, 6, 2, 780.46,31.1]
},
"cmcc,hspa": {
....
},
"wifi": {
"http://...../....": [4, 5, 1, 65.37,10.1],
"http://.....": [3, 6, 2, 78.46,11.22]
},
"广州": {
...
}
},
"20140602":{
...
}
"error":{
"404":[ "http://...../....","http://...../...."],
"500":[ "http://...../....","http://...../...."]
}
"debug":[
"http://...../....":[20140601120130,"广州”,“wifi”,200, 40.1,0.2],
"http://...../....":[20140601120130,"广州”,“wifi”,200, 40.1,0.2],
....
]
}
正常数据说明:
" http://...../....": [4, 5, 1, 65.37,10.1]
url(先测试一下带参数的数量,在决定是否带参数),
数组前三个数字表示响应时间分别在1秒以下、1-3秒、3秒以上的次数,第四个数字是下载内容大小,单位k,第五个数字是下载时间,单位秒
debug模式数据说明:
" http://...../....":[20140601120130,"广州”,“wifi”,200, 40.1,0.2]
url: [时间,地区,网络,httpcode, 大小(k),时间(s)]
debug模式是否要把dns时间和连接时间读出来?
![(please configure the [header_logo] section in trac.ini)](http://www1.pconline.com.cn/hr/2009/global/images/logo.gif)