技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 系统架构 --> 大型网站用户定位技术

大型网站用户定位技术

浏览:2228次  出处信息

其实这个文章叫大型网站用户定位技术,其实今天要讲的不是智能 DNS ,今天是要讲的智能 DNS 的问题,和一些网站对这个的处理,下面要讲的这个技术主要是针对比较大的文件,比如下载和视频之类。为什么要讲这个,主要是我的群中一些朋友吵着想了解一下。我答应了非常非常久了。直到现在才有时间给大家分享一下。

我们知道,现在很多网站的 GLSB 都是基于 DNS 来做。DNS 的解析流程如下。我们来看。

比如,我是北京的用户,我的 DNS 为 202.106.0.20.当我要打开 www.php-oa.com 时,先会给请求发给 ISP 告诉我的 DNS.这个叫 Local DNS 。然后其它的向根域和二级域的查询,都是由 Local DNS 帮我完成的。

当一个网站使用了智能的 DNS 后,智能 DNS 服务器会得到 Local DNS  的 IP 来区分用户的来源。如下,发现 202.106.0.20 这个 Local DNS 的地址,然后到自己收集的地址中一对比,是北京联通用户。然后给我解析 cname 到 bj.www.php-oa.com 这个地址。

这样完成了我最近的用户到最近的网站服务器的目的。

但这个有个小问题,就是当用户设的 DNS 地址不对时,比如现在很多人喜欢使用 google 的 DNS 。时会出现什么样的问题啦?

我们看下面的图片,就会知道。

当使用了错误的 Local DNS 后,用户的定位就不准了。这样会解析到离自己很远的服务器,比如,我使用了 google 的 8.8.8.8 的地址的 Local DNS。这时智能 DNS 只能得到 8.8.8.8 。然后智能 DNS 一查这个地址,是美国。就给解析到国外,我这画的是解析到 hk.www.php-oa.com。

在  Local DNS 地址不准时,解析基本都是不正常的。这些用户的响应和打开就非常慢。

解决方法,使用 IP 定位。

什么是 IP 定位,见下面的图。图实在不怎么样。。。不好意思,随手搞了一下。

当我们打开一个地址时,如下,使用了错误的 Local DNS ,但这些 Local DNS 查的智能 DNS 怎么样只会给出少量的地址,比如南方和北方都只有一个,解析的地址这些不会根着地区变化。

解析到的服务器,其实不是真实的服务器,只是一个 IP 调度器。这时客户端就会试着连接这个调度器,但调度器不吐文件,只会吐出一个 302 的响应,转到别的服务器(真实的最近的服务器)。

因为这些用户真实的请求出来到调度器上,不在是 Local DNS 的 IP ,是用户实际的 IP ,这些可以在调度器上在查 IP 的来源。这些就会非常准。

然后在使用 302 定位。更加高级可以使用 tcp 迁移技术

 在这个时候调度器可以做得非常强大,象大脑一样,多少量,多少请求,有多少热点,请求了多少文件。

使用上面的技术进行用户定位,优点很明显,定位非常非常精准,可以非常快和高效的定位到合适的资源。但不好的一点也很明显,需多进行一次 302 跳转,处理时间变长了一点点,所以非常合适视频网站之类来使用。

建议继续学习:

  1. 自建DNS以防止GFW干扰    (阅读:11901)
  2. 强制刷新本地 DNS 缓存记录    (阅读:9243)
  3. 2014年1月21日中国互联网DNS瘫痪事件原因分析    (阅读:6869)
  4. 关于 SOCKS 代理的远端 DNS 解析    (阅读:6420)
  5. DNS 隧道    (阅读:5674)
  6. 什么是DNS劫持和DNS污染?    (阅读:4962)
  7. nslookup通往DNS的桥梁    (阅读:4770)
  8. CentOS下通过Webmin管理BIND实现DNS轮询    (阅读:4699)
  9. 当网站使用CDN后获取客户端真实IP的方法    (阅读:4605)
  10. dig挖出DNS的秘密    (阅读:4627)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1