java多线程    Java入门    vsftp    ftp    linux配置    centos    FRP教程    HBase    Html5缓存    webp    zabbix    分布式    neo4j图数据库    

CDN的理解

CDN 可以有效解决大规模网络流量问题,比如一天上亿PV了,本地集群也做了一主多从,但是主机器也给你搞崩溃了。如果一个IP只对了一个机器,那么这个机器一天上亿,一定崩

还好啊,客户访问的不是IP,是域名,一个域名可不是只能对应一个主机,一个域名可以对应很多主机

CDN简单的比方:

CDN就是相当于遍布各个地方的仓储一样,打一个比方,如果你想以最快的速度拿到您的快递,那么,最靠谱的方法就是从离您最近的仓库发货。

在网络上,就是一个文件,比如一个视频文件,这个文件如果只有一个服务器在北京,我在上海,那么就需要去北京服务器来下载,但是CDN让上海有了个相同的文件,我从上海服务器下载就好了。

上图

CDN学术定义:

CDN的全称是Content Delivery Network,即内容分发网络。其目的是通过在现有的Internet中增加一层新的CACHE(缓存)层,将网站的内容发布到最接近用户的网络"边缘"的节点,使用户可以就近取得所需的内容,提高用户访问网站的响应速度。从技术上全面解决由于网络带宽小、用户访问量大、网点分布不均等原因,提高用户访问网站的响应速度。

(不知道为啥,阅读这种定义理解起来,那个费劲。观众为了有效理解,可以看看。)

CDN工作过程

  1. 用户输入访问的域名,操作系统向 LocalDns 查询域名的ip地址.
  2. LocalDns向 ROOT DNS 查询域名的授权服务器(这里假设LocalDns缓存过期)
  3. ROOT DNS将域名授权dns记录回应给 LocalDns
  4. LocalDns得到域名的授权dns记录后,继续向域名授权dns查询域名的ip地址
  5. 域名授权dns 查询域名记录后,回应给 LocalDns
  6. LocalDns 将得到的域名ip地址,回应给 用户端
  7. 用户得到域名ip地址后,访问站点服务器
  8. 站点服务器应答请求,将内容返回给客户端.

智能调度DNS

智能调度DNS是CDN服务中的关键系统.当用户访问加入CDN服务的网站时,域名解析请求将最终由 智能调度DNS 负责处理.
它通过一组预先定义好的策略,将当时最接近用户的节点地址提供给用户,使用户可以得到快速的服务.

简单解释:当客户是上海的,那么智能调度DNS,把域名解析到上海服务器IP,如果客户在北京,那么解析到北京服务器

https://blog.csdn.net/5hongbing/article/details/78025349

https://zhuanlan.zhihu.com/p/113037678


This entry was posted in Linux, 互联网观察, 程序视点, 高并发与大数据 and tagged . Bookmark the permalink.
月小升QQ 2651044202, 技术交流QQ群 178491360
首发地址:月小升博客https://java-er.com/blog/cdn-what/
无特殊说明,文章均为月小升原创,欢迎转载,转载请注明本文地址,谢谢
您的评论是我写作的动力.

Leave a Reply