内容分发网络(Content Delivery Network),是在现有 Internet 中增加的一层新的网络架构,由遍布全国的高性能加速节点构成。这些高性能的服务节点都会按照一定的缓存策略存储您的业务内容,当您的用户向您的某一业务内容发起请求时,请求会被调度至最接近用户的服务节点,直接由服务节点快速响应,有效降低用户访问延迟,提升可用性。虽然距离并不是绝对因素,但这么做可以尽可能提高性能,用户将会觉得比较顺畅。这使得一些比较高带宽的应用(传输高清画质的视频)更容易推动。内容分发网络另外一个好处在于有异地备援。当某个服务器故障时,系统将会调用其他邻近地区的服务器服务,进而提供接近100%的可靠度。
今天这篇教程,就教大家部署腾讯云的静态内容加速 SCD,静态内容加速(Static Content Delivery,SCD)针对门户网站、电子商务、UGC 社区等业务场景,提供了强大的静态内容(如网页样式、图片、小文件)加速分发处理能力,极大地缩减了站点响应时间,实现复杂内容秒级加载,显著提升了网页用户的体验。
CDN 用户每月均可享受 10 GB 免费流量包,接入加速域名后于每月 1 号发放至您的账户。新开通 CDN 的用户还会在开通后的 6 个月内每月收到腾讯云赠送的 50 GB 流量包。
加速原理
假设您的业务源站域名为 www.test.com
,域名接入 CDN 开始使用加速服务后,当您的用户发起 HTTP 请求时,实际的处理流程如下图所示:
详细说明如下:
- 用户向
www.test.com
下的某图片资源(如:1.jpg)发起请求,会先向 Local DNS 发起域名解析请求。 - 当 Local DNS 解析
www.test.com
时,会发现已经配置了 CNAMEwww.test.com.cdn.dnsv1.com
,解析请求会发送至 Tencent DNS(GSLB),GSLB 为腾讯云自主研发的调度体系,会为请求分配最佳节点 IP。 - Local DNS 获取 Tencent DNS 返回的解析 IP。
- 用户获取解析 IP。
- 用户向获取的 IP 发起对资源 1.jpg 的访问请求。
- 若该 IP 对应的节点缓存有 1.jpg,则会将数据直接返回给用户(10),此时请求结束。若该节点未缓存 1.jpg,则节点会向业务源站发起对 1.jpg 的请求(6、7、8),获取资源后,结合用户自定义配置的缓存策略(可参考产品文档中的 缓存过期配置),将资源缓存至节点(9),并返回给用户(10),此时请求结束。
部署CDN
申请CDN接入
在使用 CDN 服务前,您需要进行实名认证及 CDN 服务的开通,新用户登录 CDN 控制台 可以看到实名认证指引,单击前往认证
可进行实名认证。完成实名认证后,进入 CDN 控制台,确认您的实名认证信息及选择服务内容,完成后单击下一步
。
CDN 提供了两种计费方式:流量计费、带宽计费,您可以根据业务模型选择合适的计费方式,更多详细说明请参见 计费说明。勾选同意服务条款后,单击【开通 CDN】即可开始使用加速服务。
接下来就可以开始接入域名了,点击左侧的域名管理
按钮,然后再点击添加域名
。
然后在域名
处填写你的域名,源站设置设置为你服务器的IP地址。其他暂时不管,我们点击确定按钮。
点击添加
按钮后,我们还需要修改当前域名指向的地址,需要指向新的cname
地址,我们点击进入域名管理
按钮。
然后点击当前域名的管理
按钮。
复制系统分配的CNAME域名test.techeek.cn.cdn.dnsv1.com
。
配置CNAME
接下来我们就可以配置test.techeek.cn
的CNAME域名了,当然,每个人域名接入商可能不同,我这里以腾讯云域名管理为例。我们打开云解析的控制台页面,然后点击解析
按钮。
接下来添加或修改当前域名的解析地址。我们找到当前域名的主机记录
然后点击修改
按钮。
将记录类型
修改为CNAME
,解析记录修改为刚刚系统分配的test.techeek.cn.cdn.dnsv1.com
接下来耐心等待一段时间,我们就可以测试当前CDN是否生效了。
测试
在部署CDN前后,我们的服务器部署在四川成都,基本在居中的地理位置。我使用第三方测速工具站长之家-站长工具对当前网络进行测试,分为网站访问速度测试及Ping延迟测试,两次访问延迟都是越低越好。具体测试结果如下。
未部署CDN前
我们先来看看未部署CDN前的情况吧。
网站访问速度测试
我们看到在未部署CDN前,国内大部分地区访问延迟都在1200ms延迟以上,四川地区大面积超时应该是站长之家的当地测试服务器出了故障。如果是动态网站或图片视频网站,1200ms将会造成图片视频加载缓慢。我们的服务器部署在成都地区,周边省市访问延迟基本控制在400ms~800ms,但是新疆,广东等地区延迟过高,所以必须加CDN以控制延迟。
Ping延迟测试
我们看到Ping值大部分还是低于50ms,陕西地区大面积超时应该是站长之家的当地测试服务器出了故障。注意右侧表格,平均延迟82ms还是蛮高的。部分地区延迟甚至超过了100ms,总体来说情况还行,如果是游戏服务器,明显能感觉到延迟,所以还是需要优化。
部署CDN后
接下来看看部署完CDN后的情况
网站访问速度测试
我们看到接入CDN后,原来平均延迟由214ms降到了8ms,可见CDN提升还是非常明显的,对用户来说,最大的感觉就是访问速度加快了。视频播放更加流畅,从数据方面来说,推荐接入CDN服务。
Ping延迟测试
可以看到ping值最低甚至低于1ms以下,国内大部分节点延迟都控制在50ms以内,平均延迟由原来的82ms降到了现在的54ms,对游戏用户来说体验更加完美,丢包率低。所以非常建议大家接入CDN服务。
总结
现在,你学会使用CDN了嘛?当然,本次教大家只是使用的是静态内容加速,如果你有其他需求,可以试试负责下载加速的下载分发加速 DD,负责音视频加速的音视频点播加速 VCD,负责海外市场加速的海外加速 GCD,负责全链路网络加速的动态加速网络 DSA,还有守护安全的安全加速 SCDN。感兴趣的小伙伴快去体验下吧!优惠十分丰厚哦!