移动互联网数据分析 移动客户端流量统计 移动客户端数据统计(二)
来源:互联网 发布:java鱼雷好吗 编辑:程序博客网 时间:2024/06/08 01:20
原创文章,转载请注明原地址
http://blog.csdn.net/stevenprime
二.数据的收集
移动客户端收集数据后,一般通过http协议或者其它方式上传到服务器.
服务器将客户端传过来的数据进行持久化.
刚开始的时候,我的做法比较山寨,起了一个web应用,写了一个servlet,从http请求中将数据提取出来,
直接插入数据库.这样的问题很明显,如果并发稍高,数据库首先撑不住,因此用了数据库连接池,
这样的问题还是很明显,并发再高,数据库都会面临非常大的压力.
再后来,经过经理的提醒,打算先将数据存为日志,因此在servlet中使用了log4j,将数据按照一定的格式存为日志.
但是受限于java web应用的处理模型,在压力测试的时候,发现servlet在高并发下,响应时间会很长,而且超时率非常高.
在我们公司的破机器下,2G内存,4核cpu,在1000并发的情况下,响应时间大概100ms以上,3000并发的情况下,响应时间达到了500ms,
而且超时率已经达到了5%,cpu占用率相当高.
当时领导带我去找了一位公司牛人,他是负责nginx模块开发的,当时我对nginx是什么都不太清楚.
他写了一个nginx接收post请求的模块,我从他哪里将模块代码拿来,经过自己的修改,增加了配置日志滚动时间,配置自定义文件名等功能,
后来再进行压力测试,在5000并发下,相应时间非常少,而且超时率为0%,cpu占用也不高,由于满足了需求,而且没有再多的测试服务器,所以不在往上测试了.
当时nginx的稳定版好像是0.7.x,开发版是0.8.x,当时的nginx不支持静态post请求,因此自己开发nginx模块,当时还发现了nginx存在的bug :)
开发nginx模块是稍有难度的,像我这样平时是以java语言为主的,好久没碰c语言了,改写nginx模块,还比较费劲.
不过现在的nginx模块好像增加静态post功能了,而且可以用nginx的lua模块来获取http请求中的内容了.
比以前容易多了.
原创文章,转载请注明原地址
http://blog.csdn.net/stevenprime
- 移动互联网数据分析 移动客户端流量统计 移动客户端数据统计(二)
- 移动互联网数据分析 移动客户端流量统计 移动客户端数据统计(一)
- 移动互联网数据分析 移动客户端流量统计 移动客户端数据统计(三)
- CNZZ 移动统计_移动数据统计_移动应用分析_ APP统计
- 移动应用数据统计平台(之二)
- 移动互联网应用数据分析
- 移动互联网产品数据分析
- 移动应用数据统计平台(之一)
- 移动统计
- 移动互联网应用数据分析基础体系
- 移动互联网服务客户端开发技巧
- 移动互联网服务客户端开发技巧系列
- 移动互联网服务客户端开发技巧系列
- 移动数据 流程分析
- 2013移动行业数据分析报告(终端篇)——腾讯统计
- 网站访客手机统计源码,提供专属您网站的移动数据分析服务
- iOS --- 使用Mixpanel来统计和分析移动APP的用户数据
- 3款流行的移动应用平台数据统计比较
- 泡一杯清茶,看窗外细细的雨
- HDU 2710 Max Factor
- C/C++ static关键字详解
- Android中给图片加边框
- Linux字符驱动中动态分配设备号与动态生成设备节点
- 移动互联网数据分析 移动客户端流量统计 移动客户端数据统计(二)
- 关于Cookie中的Path和domain
- 大数加法
- .net framework 4.0 0xc8000247错误解决
- Oracle 游标使用
- 工作一年多了,突然想总结下
- 学习MongoDB--(7-1):进阶指南(数据库命令 & 固定集合)
- WebLogic 11g重置用户密码
- 条件锁pthread_cond_t 的应用