最近这半年多的时间做App服务端比较多(产品日活在百万级,易观国际移动App月份排名稳定在100~200之间),加上在上一家公司也重构过App服务端,所以在App服务端开发方面也积累了一些经验。不过我的职业生涯最初是做纯Web的服务端开发,二者在开发流程、架构设计、后期维护都存在一定差异。最近想了解和借鉴业界最流行的App采用的一些技术方案,这里面又包括两层意思,一是哪些App属于业界最流行的App,二是技术方案的范畴具体指什么。
第一,业界最流行App的判断标准。这里所谓的业界最流行,指的是用户数最多的App,原因在于用户数最多的App面对的技术挑战最大,并发性、安全性、稳定性、可扩展性的水平都比较高,基本上代表了最先进的技术生产实践。用户数量的选取标准是易观国际发布的每月移动APP排行榜TOP200。本文抽取了四个月份(2015年1月、2015年6月、2015年7月、2015年8月)的样本,从排名前20的App中再按行业细分,每个行业选三个比较有代表性的App,再加上一组国外比较常用的App,分别进行分析。最终App分组划分如下:
1.新闻组:腾讯新闻、搜狐新闻、今日头条;
2.电商组:淘宝、京东、楚楚街;
3.地图组:百度地图、高德地图、搜狗地图;
4.微信和支付宝;
5.国外组:Netflix(订阅应用)Amazon Mobile,Snapchat(http://www.csdn.net/article/2014-08-25/2821351)。
第二,技术方案的范围。技术方案仅限于服务端,不包括客户端。分析的方式主要集中于URL的请求参数和返回数据,包括但不限于App的通用功能和核心功能上,如广告获取方式、配置更新方式、注册登录、列表数据、详情数据等。使用的相关软件如下:
操作系统:Windows 7 旗舰版 Service Pack 1(64位)
抓包工具:Fiddler Web Debugger (v2.6.0.2)
WIFI热点提供:WIFI共享精灵3.1
手机操作系统版本:Android 4.4.2
本文是系列博文的第一篇,后面的博文会分别就各组App进行的探讨和比较。