全称:Content Delivery Network,内容分发网络。
原理
普通访问流程:
用户 → 源服务器(原始服务器,存放全部文件)。距离远、高峰期容易卡顿、延迟高,比如我们访问国外的Github是连接很慢的,但是有了CDN就不一样了。
CDN 就是在全国各地部署大量缓存节点服务器,目的是帮助我们快速访问网站。
1. 网站把静态资源(图片、视频、JS、CSS、安装包)提前分发到所有节点;
2. 用户请求时,系统自动分配距离最近、网速最好的节点给用户;
3. 大部分请求不用访问源站,直接从节点返回数据。(这就是为什么访问一些网站很慢的原因之一)
作用
1. 加快访问速度,降低延迟,跨地区、跨运营商访问差距变小;
2. 减轻源站压力,大量流量被CDN节点承接;
3. 抗DDoS攻击,海量节点分担攻击流量,保护源服务器;(像我们做小网站的就可以套一个壳,防止被攻击)
适用内容
图片、视频、软件下载、网页静态文件;
数据库、实时接口一般不走CDN。
举个通俗例子:
源站是市中心仓库,CDN是各个小区便利店,我们买东西一般是不会去仓库买的吧,都是去各大便利店买的。按照我的理解就是这样。