这段时间,在工做中遇到了一个CDN致使的图片资源加载的错误,在排查问题的过程当中,发现本身对CDN的了解很是的片面,仅仅停留在它能缓存静态资源,提高访问速度的了解中。因此以为仍是很是有必要深刻去了解下。前端
CDN的全称是Content Delivery Network
,即内容分发网络,是指一种经过互联网互相链接的电脑网络系统,利用最靠近每位用户的服务器,更快、更可靠地将音乐、图片、视频、应用程序及其余文件发送给用户,来提供高性能、可扩展性及低成本的网络内容传递给用户。————维基百科web
最简单的CDN网络是由一台CDN服务器和多台缓存服务器构成。
主要工做过程为:缓存
根本上的缘由是访问速度,访问速度对互联网应用的用户体验,甚至说各类指标(DAU,PV,UV,营收...)都有巨大的影响,任何的互联网企业都渴望本身站点有更快的访问速度和更好的用户体验。而HTTP传输时延对web的访问速度的影响很大(HTTPS更耗时),在绝大多数状况下是起决定性做用的,这是由TCP/IP协议的一些特色决定的。服务器
想要提升访问速度,最直接的作法就是多部署几个服务器在不一样的地方,让当前访问用户更靠近服务器。可是多设置几个服务器又会有其余乱七八糟的问题(异地部署,访问一致性,服务管理,成本变高等等)。网络
这个时候就体现出CDN的做用了。CDN自己是一种公共服务,他自己有不少台位于不一样地域、接入不一样运营商的服务器,而所谓的使用CDN实质上就是让CDN做为网站的门面,用户访问到的是CDN服务器,而不是直接访问到网站。因为CDN内部对TCP的优化、对静态资源的缓存、预取,加上用户访问CDN时,会被智能地分配到最近的节点,下降大量延迟,让访问速度能够获得很大提高。负载均衡
掌握CDN工做流程或者基本的原理这种知识,对于一个前端来讲,在甩锅的时候更方便。固然最主要是为了解决工做中的问题。性能
维基百科、百度百科阿里云