弱网络下长连接模式替换REST开发测试
2013-08-15 15:19
274 查看
以下是基于iPhone App使用长短连接在不同网络情况下的真实业务测试结果:
Very
Bad NetWork(类似与手机信号为E或者O的情况)
Edge(2.5G)
测试场景:
a.同一手机,同一用户。
b.用iOS 的developer 模拟不同Network link condition来做仿真测试。
c.短连接直接连接真实的淘宝开放平台和无线后台,长连接通过服务端代理间接访问淘宝开放平台和无线后台。
d.短连接数据压缩交给web容器处理(gzip),长连接代理服务器负责压缩(gzip)。
e.短连接数据报文为标准的http协议报文,长连接私有协议。
注意:
由于每一个业务请求也受到真实后台业务的影响,因此请垂直比较,横向比较没有意义。
结果图表:
结论:
REST模式在移动应用中受网络影响很大,数据包越大受影响越大(分包重传的情况)。(wifi高速网络下长连接没有任何优势,还会带来管理复杂性)
场外话:
客户端设计需要比较好的代码实现能力,否则可能得不偿失。(连接管理,并发管理,事件机制,缓存管理,客户端资源消耗控制)
当Tunnel无法运作的时候,自动采用REST短连接方式做业务处理。
在可识别网络情况的前提下,wifi自动采用REST短连接方式。
具体实现和设计以及测试过程中iOS这边的各种坑,后续慢慢放出。(千牛团队的Rainbow技术项目)
Very
Bad NetWork(类似与手机信号为E或者O的情况)
Edge(2.5G)
测试场景:
a.同一手机,同一用户。
b.用iOS 的developer 模拟不同Network link condition来做仿真测试。
c.短连接直接连接真实的淘宝开放平台和无线后台,长连接通过服务端代理间接访问淘宝开放平台和无线后台。
d.短连接数据压缩交给web容器处理(gzip),长连接代理服务器负责压缩(gzip)。
e.短连接数据报文为标准的http协议报文,长连接私有协议。
注意:
由于每一个业务请求也受到真实后台业务的影响,因此请垂直比较,横向比较没有意义。
结果图表:
结论:
REST模式在移动应用中受网络影响很大,数据包越大受影响越大(分包重传的情况)。(wifi高速网络下长连接没有任何优势,还会带来管理复杂性)
场外话:
客户端设计需要比较好的代码实现能力,否则可能得不偿失。(连接管理,并发管理,事件机制,缓存管理,客户端资源消耗控制)
当Tunnel无法运作的时候,自动采用REST短连接方式做业务处理。
在可识别网络情况的前提下,wifi自动采用REST短连接方式。
具体实现和设计以及测试过程中iOS这边的各种坑,后续慢慢放出。(千牛团队的Rainbow技术项目)
相关文章推荐
- 简单理解Vmware虚拟机网络连接模式(bridged、NAT、host-only)
- iOS开发——Reachability和AFNetworking判断网络连接状态
- 网络测试正常连接电脑网卡灯不亮
- Ping测试网络连接状态
- windows 10打开开发模式后安装ubuntu后如何连接其桌面
- VMware虚拟机上网络连接(network type)的三种模式--bridged、host-only、NAT
- VMware-Host only(主机模式)网络连接方式
- ActiveMQ集群:网络连接模式(network connector)详解
- VMware虚拟机下网络连接的三种模式
- Windows Mobile手机连接GPRS或者CDMA网络(用C# .NET开发)
- 简单区分Vmware的三种网络连接模式(bridged、NAT、host-only)
- VMware中Bridged、NAT、host-only三种网络连接模式的原理及其区别
- VMWare虚拟机3种网络连接模式
- VMware Workstation三种网络连接模式说明(Bridged,NAT,Host-only networking)
- Android测试网络是否连接
- VMWare 网络连接模式(bridged、NAT、host-only)详解
- Vmware的三种网络连接模式(bridged、NAT、host-only)
- C#Socket开发“网络连接超时设置Timeout”,解决网络连接速度过慢的问题
- unity开发:TCP socket网络连接
- android开发真机通过局域网连接本地服务器测试的问题?