看点:听云解读2015中国移动应用性能现状
|
近日,听云发布了《2015中国移动应用性能管理白皮书》。白皮书中听云iDaaS数据中心对2015年iOS、Android两大平台移动应用的概况进行盘点,揭露了2015中国移动应用性能的现状。 有趣的是,在绘制白皮书的过程中,发现有几组移动应用性能数据颇为有趣,现在就让我们来一一解读。 看点一:崩溃率,到底谁高谁低 在报告发出之前我们在微信做了一个小小的调查:在你的心目中,iOS和Android崩溃率到底谁高谁低?结果很有意思,见下图。
这个趋势和我们没看过报告之前想的是一样的:iOS如丝般顺,安卓机则是各种卡顿爆炸。考虑到我们公众号的程序猿浓度颇高,这个结果某种程度上来说也代表了现在技术人员心目中的感受,然而结果呢,只能用大跌眼镜来形容:
是的,你没看错,0.13%比0.93%,从2015年全年的观察来,Android系统崩溃率明显优于iOS,实际结果和预测完全相反,而且相差7倍之多,为什么会出现这种与感官相去甚远的结果?其实通过接下来的解读你就能够清晰的了解,这也是数据的魅力,能够发现隐藏起来的真实: 1、版本 我们都知道Android在发布4.X之后,随着不断的优化直到4.4 KitKat版本,稳定性一直都有显著提升,Android 5.0 Lollipop更不用说,所以整个2015年,Android的崩溃率都很低。这其中还有另外一个小的因素,Android是进行即时推送更新,有问题及时更新,一定程度上这也降低了系统出问题的隐患。 反观iOS,iOS8以上版本在发布之初较不稳定,拉高了整体崩溃率;2015年4月9日发布了iOS8.3正式版,崩溃率达到了2015年的高峰(见下图)。与此同时iOS长周期更新推送策略也容易出错,毕竟测试很难测出所有状况。
2、架构 除去版本之外,还有很多底层的因素在影响着iOS。iOS崩溃率高于Android的一个主要原因是由于两个平台对于内存管理机制的差异造成的,由于语言/系统架构的特殊性,OC需直接面对底层API,出错几率可能性较高,C指针使用不当的危险性也极易导致崩溃。 3、硬件 2015年移动硬件性能不断提升,不仅仅是苹果,安卓各大品牌在每次发新机时都有种贴身肉搏的感觉,抛开性价比不谈每一次的更新换代都能看见实实在在的性能提升,这也一定程度上解释了Android崩溃率较低的原因,从热门机型崩溃排行中我们也能看到,各品牌“机皇”们的表现都比较稳定。
看点二:网络性能,到底谁好谁坏 对于APP来说,除去崩溃以外,交互性能也异常重要,其直接反映了用户与移动应用的界面元素和内容交互的体验耗时,由首包时间、HTTP响应时间两大指标展现。据统计,当出现性能问题导致延时响应10秒后,有近5%的真实用户会放弃使用该应用。 然而,随着4G的发展,各运营商网络性能层面表现差异较大,这其中最大的原因是与各自的网络支撑能力及区域发展重点有关。 1、HTTP响应时间 通过对请求包大小的分析,我们可以得出现今流行的请求包大小区间以及各个数据包区间的响应时间,这些数据综合起来可以提供给APP开发者相对应的响应时间均值情况参考。 如图所见,81.17%以上的HTTP请求包大小在50KB以下,10.17%的HTTP请求包在[50,100]KB区间。
2、首包时间 在首包时间方面,通过对移动网络以及WiFi网络数据的对比,我们可以看出中国联通、中国电信要优于中国移动。
3G方面由于中国移动采用大唐电信的td-SCDMA技术相对不是很成熟,相比于联通的W-CDMA技术和电信的CDMA技术差距还是比较明显的。 4G方面由于中国联通、中国电信都采用FDD+td混合LET组网的形式,相同的网络制式,所以实际使用中的速度相差无几,而中国移动采用相关技术较晚,比起联通和电信的FDD-LET成熟度相对低一些。 而在WiFi方面,由于区域的原因,总体来说除了中华通信以外,表现差距不大,三大移动运营商性能接近,方正宽带、歌华有线、广电宽带表现最优。
看点三:错误,到底是何原因 移动应用的错误分为网络错误以及HTTP错误,我们分别来看看他们是什么样的。 1、网络错误 首先是网络错误分布图:
网络错误是指主机请求返回的网络错误状态总数,通过对Android和iOS网络错误的对比,我们可以清晰的看出两种系统的错误类型存在明显差异,这说明网络错误与系统具有一定的 相关性。在连接超时、客户端协议错误、非法响应内容以及SSL证书错误引起的问题方面,Android明显高于iOS;而在未知主机错误上,iOS则明显高于Android系统,不同系统的开发人员应该重点注意一下。 2、HTTP错误 其次是HTTP错误,它是指HTTP请求后返回的错误状态码的统计,他的分布图如下:
我们可以看出HTTP错误发生在Android与iOS状况与原因也是不一样的,主要是因为不同操作系统本身的特点以及后台通信机制,都可能会对应用的操作给出不同的响应错误。 想要分析不同错误原因,需要细化到详细的业务流程,研发者根据每个流程独立研究后制定针对性的优化措施。 看点四:行业表现,到底因何而起 (编辑:应用网_扬州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |











