1.什么是CDN?
CDN即内容分发网络。
常见的CDN厂商:阿里云CDN、腾讯云CDN、360CDN、又拍云CDN、七牛云CDN。
2.为什么要使用CDN?
在没有CDN之前:
1. 我们在东北买了一台阿里云主机开发商场系统,那么当广州的用户访问时,数据包需要从中国的最南边跑到中国的最北边,这样数据包在传输时很容易被阻塞。
2.我们的网站在移动机房,当电信用户访问时,需要跨运营商,而运营商之间的带宽通常不太大,无法满足网民的需求。
以上两种情况都会造成网站访问时延迟过大,进而影响用户体验!用户的体验差了,网站的访问量小了,那就没法赚钱了。
在购买了CDN服务之后:
相当于在全国各地都有了我们的网站,广州的用户在访问时,可以就近给用户分发网站内容,数据包不用跑那么远了!
无论用户身处哪个运营商,都相当于访问处在自己运营商的网站!
总结起来一句话:花钱的和没花钱,效果就是不一样的!
3.CDN的原理
这么神奇的技术是如何实现的呢?
CDN一个系统,这个系统通常是由DNS服务器和缓存服务器组成,当然这些缓存服务器在全国各地机房都有分布。
1. 当用户的解析请求到达本地DNS服务器的时候,由于CNAME存在,本地DNS服务器会将解析权交给CNAME指向的CDN专用DNS服务器,而不会去找根节点了。
2. CDN的DNS服务器会将CDN的一级负载均衡器的地址告诉用户。
3.用户就向CDN的一级负载均衡设备发起URL请求。
4.CDN的一级负载均衡会根据用户的IP所在区域和URL,选择距离用户最近的和有对应内容的二级负载均衡设备,返回给客户端。