[关闭]
@SmartDengg 2016-11-21T05:59:45.000000Z 字数 1076 阅读 2182

流量统计方案

目的

应用开发过程中,不仅要保质保量,还要考虑用户体验,优化产品细节。
提高网络访问速度的同时还应该减少不必要的流量消耗。

对网络访问进行拦截,统计每一次网络请求的请求体(如果存在的话)和响应体大小,或者一些重要的头信息字段,如果数据流超过设定的阈值,则视为异常,存入本地数据库列表,并提供上传功能。

其中关于API接口的统计,可用来分析接口请求的稳定性,但最重要的还是可以判断哪些接口容易造成访问超时,从而解决用户的“刷新了半天也刷新不出来数据”等抱怨,或者说在一定程度上可以用来分析用户行为。

另外,关于PIC接口的统计,则可以同来定位服务端返回的图像是否会造成流量的过度消耗,甚至太大的图片根本无法加载进Android系统的内存。

方案

客户端本地建数据库表,进行统计和并提供对接大数据服务器的调用函数。

根据不同场景,进行分析:

数据库的每条信息中都会携带日期字段,如2016-11-11,以及创建该条数据的毫秒时间戳。

参数名 类型 含义 说明
timestamp long 记录的时间 单位毫秒
duration long 当前指标好使 单位毫秒
url string 接口URL -
network string 当前网络类型 WIFI,4G,3G,2G,UNKOWN
method string HTTP接口方法 GET/POST
type string 类型 api/pic

实际存储结果如下:

参数名 类型 含义 说明
datatime string 记录的时间 -
url string 接口URL -
totalflow long 一天总流量 单位Byte
maxflow string 当天接口最大单次流量 单位Byte
count int 接口访问次数 -
type string 类型 api/pic

实际存储结果如下:

参数名 类型 含义 说明
timestamp long 记录的时间 -
url string 接口URL -
flow long 图像大小 单位Byte
type string 类型 api/pic

实际存储结果如下:

API-Interceptor

PIC-Interceptor

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注