今天首先回答上一篇的问题:为什么APP通过运营商接入网络,连通率会那么差?1. 域名缓存问题运营商的localdns会缓存域名的解析结果,不向权威DNS递归查询解析为什么要这么干呢?1)运营商之间的跨网流量结算费用比较贵(他们内部技术团队的KPI),为了最大化的在本网消耗(内部结 ...
今天首先回答上一篇的问题:
为什么APP通过运营商接入网络,连通率会那么差?
1. 域名缓存问题
运营商的localdns会缓存域名的解析结果,不向权威DNS递归查询解析
为什么要这么干呢?
1)运营商之间的跨网流量结算费用比较贵(他们内部技术团队的KPI),为了最大化的在本网消耗(内部结算好算),减少跨网结算,所以会把IP地址解析到自己的内容缓存IP地址
2) 推送广告,有利可图。把内容缓存替换为第三方联盟广告.
2. 解析转发问题
部分小运营商图省事,不进行域名的递归解析,而是把解析请求转发到其他运营商的LocalDNS上,导致调度出现问题,跨网调度,最后影响的就是耗时,当耗时足够大时,连通性就没法保障了
3. LocalDNS递归出口NAT导致调度不准
LocalDNS递归出口NAT指的是运营商的LocalDNS按照标准的DNS协议进行递归,但是因为在网络上存在多出口且配置了目标路由NAT,结果导致LocalDNS最终进行递归解析的时候的出口IP就有概率不为本网的IP地址,跨网的影响如上
所以基于以上的原因,APP端对服务器端API的连通性就会损失个5%左右.
解决方案请见上文<移动端API接口优化的术和结果>
今天来讲另一个话题:
移动端API架构 是该统一Proxy还是各自为政?
我经历过几家公司,有把所有的service放到一个域名下的,也有按业务的不同来拆分为不同域名服务的
如:api.baidu.com/msgapi.baidu.com/userapi.baidu.com/search也有如:msg.baidu.comuser.baidu.comsearch.baidu.com
原标题:移动端API架构 统一Proxy还是各自为政?
关键词:架构
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。