网络内容缓存CDN的工作原理


CDN的全称是Content Delivery Network,即内容分发网络

CDN的目的就是提高用户访问网站的响应速度

提速的基本思路

例如你的网站服务器是在北京,这时有一个广州的用户来访问你的网站

当你的网站没有使用CDN时,用户是直接通过网络读取你的服务器,这个过程就涉及到了一些网络问题,例如南北网络互相访问慢的问题,或者涉及到不同网络运营商的网络沟通问题,这些问题很可能对用户体验产生不好影响

当你的网站使用CDN后,CDN把你的网站资源复制到了全国各地的服务器上,这个广州电信的用户访问你的网站时,CDN就把这个访问指到了广州电信IDC机房中,就从网络层面上让用户的体验达到了最优

所以,CDN的基本思路就是把你的网站资源缓存到全国不同地理位置的服务器上,使用户可就近取得所需内容

核心组成部分

源站

可以理解为就是你的网站,添加、删除和更改网站的资源,都是在源站上进行的,缓存服务器从源站进行抓取

缓存服务器

直接提供给用户访问的站点资源,由N台服务器组成

当用户发起访问时,被智能DNS定位到离他较近的缓存服务器,如果用户所请求的内容刚好在缓存里面,则直接把内容返还给用户;否则,缓存服务器向邻近的缓存服务器或直接向源站抓取内容,再返还给用户

智能DNS

根据用户的来源,将其访问请求指向离用户比较近的缓存服务器

CDN工作流程

网络内容缓存CDN的工作原理的更多相关文章

  1. 聊聊高并发(三十四)Java内存模型那些事(二)理解CPU快速缓存的工作原理

    在上一篇聊聊高并发(三十三)从一致性(Consistency)的角度理解Java内存模型 我们说了Java内存模型是一个语言级别的内存模型抽象.它屏蔽了底层硬件实现内存一致性需求的差异,提供了对上层的 ...

  2. CDN架构以及原理分析

    详见: http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp61  在不同地域的用户访问网站的响应速度存在差异,为了提高用户访问的响应 ...

  3. Android之view的工作原理2

    学习内容 View的底层工作原理,比如View的测量流程.布局流程以及绘制流程:以及常见的View回调方法:熟悉掌握前面的知识后,自定义View的时候也会更加的得心应手. 4.1 初识ViewRoot ...

  4. CDN技术之--内容缓存工作原理

    有CDN前的网站服务技术–硬件扩展:高成本,灵活性和可扩展性比较差–镜像技术(mirroring):镜像服务器安装有一个可以进行自动远程备份的软件,每隔一定时间,各个镜像服务器就会到网站的源服务器上去 ...

  5. cdn工作原理

    cdn工作原理 1.用户向浏览器输入www.web.com这个域名,浏览器第一次发现本地没有dns缓存,则向网站的DNS服务器请求: 2.网站的DNS域名解析器设置了CNAME,指向了www.web. ...

  6. CDN 工作原理剖析

    CDN 工作原理剖析 CDN / Content Delivery Network / 内容分发网络 https://www.cloudflare.com/zh-cn/learning/cdn/wha ...

  7. web基础-web工作原理,http协议,浏览器缓存

    1,web工作原理 2,http协议 3,浏览器缓存 4,cookie和session -------------------------------------------------------- ...

  8. 关系型数据库工作原理-快速缓存(翻译自Coding-Geek文章)

    本文翻译自Coding-Geek文章:< How does a relational database work>. 原文链接:http://coding-geek.com/how-dat ...

  9. 网络数据传输安全及SSH与HTTPS工作原理

    本节内容 网络数据传输安全概述 数据加密算法分类 SSH工作原理 HTTPS工作原理 参考资料 个人一直在努力推动git在公司内部的普及和使用,前些日子在公司内部做了一次分享课,给大家介绍了下项目发布 ...

随机推荐

  1. libgdx 常见问题

    libgdx assets file not found Select Run -> Edit Configurations from the menu In the "Working ...

  2. PL/SQL不支持64位Oracle Client 解决办法

    解决X64操作系统PL/SQL连接报错问题 make sure you have the 32 bits oracle client installed 说明PLSQL Developer并不支持Or ...

  3. AngularJS Best Practices: ui-router

    ui-router is a 3rd-party module and is very powerful. It supports everything the normal ngRoute can ...

  4. Linux:实现Hadoop集群Master无密码登录(SSH)各个子节点

    以下所介绍的安装方式都是在线安装方式,如果你需要连网请参考:Linux:宿主机通过桥接方式连接的VMware内部Linux14.04虚拟机(静态IP)实现上网方案 环境: OS:Linux Ubunt ...

  5. collectionView,tableView的细节处理

    1.设置collectionView的高度 1.1为什么要设置高度? collectionView是在tableView的footView里面 , tableView能滚动,collectionVie ...

  6. linux 查看磁盘剩余命令

    df -hl命令查看各磁盘的大小,使用情况,挂载点等信息. du -bs dir_name查看具体目录的空间大小

  7. wampserver-----------如何设置wampserver在windows下开机自动启动。

    虽然很简单,但是还是做个记录.我的习惯,还是看图: 到你电脑的服务里面找到这两项然后点击右键属性,设置为自动.

  8. js解析php数组

    <script language="javascript"> var str; //$file = 'config/config.xml'; str = '<?p ...

  9. zjuoj 3608 Signal Detection

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3608 Signal Detection Time Limit: 2 Sec ...

  10. mfc ui2

    引用:http://www.cnblogs.com/likwo/archive/2010/10/22/1858716.html CJLib(mfc扩展开发包,是xtreme toolkit的前生,但x ...