1 App自动选取最佳服务器的策略
我们经常看到App中会包含有一个服务器列表文件,开发人员和测试人员可以随意切换到任意服务器进行开发测试工作。
这只是服务器列表文件的一种功用,是给开发和测试人员使用的,为此我们需要为App设计一个后门,由他们手动进行切换,相关内容请参见2章节。
服务器列表文件还有另一种作用,就是由App自己来决定选用哪个服务器作为MobileAPI服务器。
众所周知,App发起MobileAPI请求到接收到数据,这个过程所耗费的时间由3部分组成:从App到达服务器的时间,服务器处理的时间,从服务器到App的时间。
其中,从App到达服务器的时间,加上从服务器到App的时间,我们称为来回走路的时间。对于2G、3G、4G和WiFi用户,因为网络环境的不同,来回走路所花费的时间大相径庭。
于是我们会准备多台服务器,可能是放在全国各地,也可能是分别接入电信、移动或联通的专线。这些服务器有可能是配置相同的,也有可能是由若干高配和低配组成。我们把这些服务器的域名罗列在App的服务器列表文件中,如图9-11所示:
<Servers> <Server key="s1" type="3G" url="http://login1.company.com/"> <Server key="s2" type="3G" url="http://login2.company.com/"