For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
从原理上来讲,HttpDNS只是将域名解析的协议,由DNS的协议换成http的协议,其实它一点都不复杂。广州PHP培训小编觉得这个很微小的转换,却带来无数的收益。根治了域名解析的异常,由http的协议直接打到httpDNS服务器的IP上,用户在客户端解析请求的时候,不会遭受到域名解析异常这些问题;调度非常精准,有些包括DNS做的不太好,它多个网卡,甚至多个链路。
一个电信的用户访问上来,可能是联通的出口,HttpDNS也可以面临这样的问题,因为它访问服务器的时候直接走业务的IP,http服务器抓到的IP也是业务的IP,可以保证IP地址非常精准,后面的业务来说,也是可以分配到最好的一个服务器的IP地址。
实现成本非常低廉,目前Android版本SDK已经开源了,代码已经托管,大家可以去使用。iOS版本在最后测试阶段,估计近期也会开源。同时,它的扩张性非常强,http可以接入多方的HttpDNS,甚至可以直接访问公共的DNS服务器。有的人会说,我没有HttpDNS服务器怎么办?目前已知可以使用的DNS服务器,DNSPodD,目前开放了httpDNS接口,免费使用,大家可以直接用它。
同时,114也可以做,但是还没有正式的开放。阿里内部也已经有很多项目使用了自己家的DNS服务器。新浪目前也是在做自己的HttpDNS服务器,具体是否会对外使用,还没有收到消息。目前来说,大家可以选择的有DNSPodD,同时也可以在我们这样的SDK里面,可以直接发UDP的包,直接到114,或者直接到8.8,甚至一些其他的公共的DNS服务器上直接进行查询,也就回答了大家说没有HttpDNS服务器能不能用,是可以的。
解析HttpDNSLib库目前的现状,存在的问题,以及解决的问题
HttpDNS这样一个Lib库解决了三类问题:第一、LocalDNS的劫持。第二、平均访问延迟下降。第三、用户连接失败率下降。目前已知用户延迟访问下降可以超过10%,访问失败率下降超过1/5。当然这个也要看大家用的是什么样的一个服务。
LocalDNS劫持,由于HttpDNS通过IP直接请求,可以直接拿到这样的记录。比如在tcp/ip层进行劫持,我们目前也会加入一些使用因子,或者数据加密的方式,保证数据的可信度,目前这一类的事情已经在做,后期我想可能很快也会开源。
为什么朋友访问延迟可以下降,由于IP直接访问省掉了一次domain解析过程,以前访问一个域名,由本地系统先查询一下,当前的这个域名应该访问哪一台服务器。因为去请求A记录的时候和业务是一个异步的操作,不会给业务带来任何影响。
目前,SDK去测试,获取到一个A记录平均时间会在5毫秒以内。
用户连接失败率下降,这个里面有一个智能排序的算法。比如说,我们分析一个用户的行为,一个用户每天可能是在家、路上、公司,很多用户可能是这样几个点,同时有其他的用户不太遵循这样的规律。在家的时候,他所访问的服务器正常一般是固定的,因为他的家是固定的,在公司的时候一般访问的服务器也是固定的。我们本地在SDK的算法会把他访问的历史记录缓存下来,同时有一系列的优化算法。比如他经常访问这台服务器,这台服务器能频繁的给它正确的返回结果,我们在算法里面排分的时候,会把这台服务器打分打的比较高。也就是通过一些历史的数据,个性化的定制了用户应该去访问哪些服务器,可以排除一部分的错误。