CDN内容分发服务原理与传统请求剖析

1 传统访问页面方式浏览器

   (1) 用户提交域名缓存

   (2) 浏览器对域名解析,找不到对于的IP;再到操做系统,仍是没有;再到路由器,服务器

        再没有就到DNS服务器找负载均衡

  (3) 最后找到对应的IP地址,向域名的服务主机发出数据访问请求网站

  (4) 服务器就返回页面的内容给客户端操作系统

  可是在这里的问题就是若是访问量很大的网站的话,好比新浪微博、facebook等大型网站,这样子的服务器确定会被挤爆了,那怎么办呢?缓冲或者说是存储这种理念在冯·诺依曼提出以后就特别流行,确实,CDN也是采用缓存的理念内存

2 CDN缓存后的网站的访问过程路由

   (1) 用户向浏览器提供要访问的域名;域名

   (2) 浏览器调用域名解析库对域名进行解析获得CNAME,再解析CNAME域名获取IP地址,微博

        在此过程当中,使用的全局负载均衡DNS解析,如根据地理位置信息解析对应的IP地址,

        使得用户能就近访问;

   (3) 此次解析到只是CDN服务器的IP地址,浏览器获取这个IP地址就向CDN缓存发送请求;

   (4) CDN缓存服务器根据浏览器提供的要访问的域名,经过Cache内部专用DNS解析获得

       此域名的实际  IP地址,再由缓存服务器向此实际IP地址提交访问请求,缓存服务器就好

       像是中间人那样子;

    (5) CDN缓存服务器获取内容后,一方面在本地存储,以便客户端下次访问;另一方面

       就发送给客户端;

    

    (6) 客户端就把从CDN缓存服务器返回的内容显示,下次访问就直接访问CDN缓存服务器。

 其实从上面就好像咱们的计算机要访问数据那样子,由于CPU的运算能力很快,快到内存根本跟不上。若是CPU每次运算一下就要去内存获取数据的话,那么计算机的效率过低了。这样子的话,咱们设置缓存,可以缓冲二者速度不匹配而致使的效率问题。因此CPU要访问数据,先到缓存中找,找不到就去内存中找,而后在缓存中添加对应的数据,下次要访问改数据就直接到缓存中找就好了。

相关文章
相关标签/搜索