主流的CDN服务提供商有阿里云、华为云、腾讯云、网宿科技、蓝汛云等等。
1、阿里云CDN简介
阿里云在全球拥有2800+节点。中国内地(大陆)拥有2300+节点,覆盖31个省级区域,大量节点位于省会等一线城市。海外、中国香港、中国澳门和中国台湾拥有500+节点,覆盖70多个国家和地区。同时,阿里云所有节点均接入万兆网卡,单节点存储容量达40TB~1.5PB,带宽负载达到40Gbps~200Gbps,具备130Tbps带宽储备能力。
(1)阿里云CDN主要的应用场景包括:
- 图片小文件:如果您的网站或应用App的主要业务为图片和小文件下载,包括各类型图片、html、css、js小文件等。
- 大文件下载:网站或应用App的主要业务为大文件下载,平均单个文件大小在20M以上,如游戏、各类客户端下载和App下载商店等。
- 视音频点播:网站或应用App的主要业务为视频点播或短视频类。支持MP4、FLV等主流视频格式。
- 全站加速:全站加速是阿里云一款独立产品,主要用于动态内容加速,也可以实现动静分离加速。
- 安全加速:如果您的网站易遭受攻击且必须兼顾加速的业务场景,则需要使用安全加速功能,提升全站安全性。
(2)阿里云CDN工作原理
假设加速域名为www.a.com ,接入CDN网络,开始使用加速服务后,当终端用户(北京)发起HTTP请求时,处理流程如下图所示。
- 当终端用户(北京)向www.a.com 下的指定资源发起请求时,首先向LDNS(本地DNS)发起域名解析请求。
- LDNS检查缓存中是否有www.a.com 的IP地址记录。如果有,则直接返回给终端用户;如果没有,则向授权DNS查询。
- 当授权DNS解析www.a.com 时,返回域名CNAME www.a.tbcdn.com 对应IP地址。
- 域名解析请求发送至阿里云DNS调度系统,并为请求分配最佳节点IP地址。
- LDNS获取DNS返回的解析IP地址。
- 用户获取解析IP地址。
- 用户向获取的IP地址发起对该资源的访问请求。
- 如果该IP地址对应的节点已缓存该资源,则会将数据直接返回给用户,例如,图中步骤7和8,请求结束。
- 如果该IP地址对应的节点未缓存该资源,则节点向源站发起对该资源的请求。获取资源后,结合用户自定义配置的缓存策略,将资源缓存至节点,例如,图中的北京节点,并返回给用户,请求结束。
2、使用CDN
2.1、开通CDN服务
(1)前提条件:
执行本文操作之前,请确保您已完成阿里云账号注册和实名认证。
(2)操作步骤:
登录阿里云CDN平台。
单击立即开通。
选择适合您的计费类型,并选中服务协议。
单击立即开通。
成功开通CDN服务后,您可以单击管理控制台,进入CDN控制台。
2.2、添加加速域名
如果需要使用CDN加速指定网站上的业务,则需要将该网站作为源站,为其创建加速域名。CDN通过加速域名将源站上的资源缓存到CDN的加速节点,实现资源访问加速 。
(1)操作步骤:
- 登录CDN控制台。
- 在左侧导航栏,单击域名管理。
- 在域名管理页面,单击添加域名。
- 配置加速域名、资源分组、业务类型、源站信息、端口和加速区域。
源站信息参数值说明:
# IP:支持多个服务器外网IP, 阿里云ECS的IP可免审核
# 源站域名:支持多个源站域名
# OSS域名:阿里云OSS Bucket的外网域名
# 函数计算域名:选择函数计算区域和域名
端口参数值说明:
# 80端口 CDN回源请求源站的80端口。
# 443端口 CDN回源请求源站的443端口。
单击下一步
当您加速域名审核通过后,会出现在域名管理的域名列表中。状态为正常运行,表示添加成功。
2.3、配置CNAME
加速域名添加成功后,阿里云CDN会分配对应的CNAME地址。如果启用CDN加速服务,则需要将加速域名指向CNAME地址,访问加速域名的请求才能转发到CDN节点上,达到加速效果。
获取加速域名的CNAME地址。
(1)获取加速域名的CNAME地址。
- 登录CDN控制台。
- 在左侧导航栏,单击域名管理。
- 进入域名管理页面,复制加速域名对应的CNAME值。
(2)添加CNAME记录。
该步骤以在阿里云云解析DNS控制台添加CNAME记录为例,为您介绍CNAME的配置流程。如果您是在DNSPod、新网、Godaddy等其他域名解析服务商设置的域名解析,请前往对应的域名解析服务商添加CNAME记录,添加方法和本文介绍的方法类似。
- 登录阿里云云解析DNS控制台。
- 进入域名解析页面,在您需要设置的域名后面,单击解析设置。
- 单击添加记录,添加CNAME记录。
说明
- 记录类型:选择CNAME 。
- 主机记录:加速域名的前缀。
- 解析线路:默认值。
- 记录值:输入加速域名对应的CNAME地址。
- TTL:默认值。
单击确定。
- 成功配置CNAME且生效后,加速服务会立即生效。
(3)验证CNAME配置是否生效。
- 打开Windows的CMD命令行程序。
- 在命令行中ping加速域名,如果返回的解析结果和CDN控制台上该加速域名的CNAME值一致,则表示CDN加速已经生效。
3、服务管理
如果需要通过监控、统计分析、用量查询、刷新预热、日志分析等对CDN资源进行管理,则可以使用阿里云CDN控制台提供的服务管理功能。通过该功能可以实时有效的分析CDN运行状况,并及时做出业务决策。
阿里云CDN服务管理功能列表:
刷新预热
CDN提供资源的刷新和预热功能。通过刷新功能,可以强制CDN节点回源并获取最新文件;通过预热功能可以在业务高峰期预热热门资源,提高资源访问效率。
CDN提供的资源的刷新和预热功能的概念如下:
- 刷新功能是指提交URL刷新或目录刷新请求后,CDN节点的缓存内容将会被强制过期,当向CDN节点请求资源时,CDN会直接回源站获取对应的资源返回给您,并将其缓存。刷新功能会降低缓存命中率。使用场景:通常是在源站点中进行了静态资源的更新。从边缘节点主动去源站加载最新资源。
- 预热功能是指提交URL预热请求后,源站将会主动将对应的资源缓存到CDN节点,当首次请求时,就能直接从CDN节点缓存中获取到最新的请求资源,无需再回源站获取。预热功能会提高缓存命中率。
操作步骤:
- 登录CDN控制台。
- 在左侧导航栏,单击刷新预热。
- 在刷新缓存页签,您可以根据所需,配置刷新或预热信息。
- 单击提交
- 单击操作记录
- 在操作记录页签,配置查询时间、操作类型、域名或URL,单击查询。
刷新和预热功能的详细说明如下表所示。
4、域名管理
4.1、回源配置
当通过客户端请求访问资源时,如果CDN节点上未缓存该资源,则会到源站获取,同时缓存到CDN节点。可以根据所需配置回源的相关功能,提升资源访问效率。
功能 | 说明 |
配置回源HOST | 当需要自定义CDN节点回源时需要访问的具体服务器域名时,需要配置回源HOST的域名类型。 |
配置回源协议 | 当通过客户端请求访问资源时,如果CDN节点上未缓存该资源,则会根据配置的协议跟随规则到源站获取资源,同时缓存到CDN节点。 |
开启私有Bucket回源授权 | 当源站为OSS(阿里云云存储)时,可以开通加速域名访问私有OSS Bucket资源的权限,有效防止资源盗链。 |
关闭私有Bucket回源授权 | 可以通过RAM控制台,取消对应角色名称的授权,关闭私有Bucket回源功能。 |
配置回源SNI | 如果源站IP绑定了多个域名,当CDN节点以HTTPS协议访问您的源站时,可以设置回源SNI,指明具体访问域名。SNI(Server Name Indication)是 TLS 的扩展,用来解决一个 服务器拥有多个域名的情况。 |
配置自定义回源HTTP头 | HTTP请求回源时,可以添加或删除回源HTTP头。 |
配置回源请求超时时间 | CDN加速节点的回源请求超时等待时间默认为30秒,可以根据实际需求设置CDN回源请求的最长等待时间。当回源请求等待时间超过配置的超时时间时,CDN节点与源站的连接断开。 |
4.2、缓存配置
CDN加速静态资源时,将源站上的资源缓存到距离客户端最近的CDN节点上。当访问该静态资源时,直接从缓存中获取,避免通过较长的链路回源,提高访问效率。
功能 | 说明 |
配置缓存过期时间 | 您可以针对静态资源配置指定目录和文件后缀名的缓存过期时间,以及优先级,使其在CDN上按照缓存规则进行缓存。 |
配置状态码过期时间 | 您可以配置资源的指定目录或文件后缀名的状态码过期时间。 |
配置HTTP头 | 您可以配置资源缓存过期的HTTP消息头。 |
自定义错误页面 | 您可以根据所需自定义HTTP或者HTTPS响应返回码跳转的完整URL地址。 |
配置重写 | 您可以对请求的URI进行修改和302重定向至目标URI。 |
4.3、访问控制
可以通过设置Referer、IP、UsageAgent黑名单和白名单,以及URL鉴权,来实现对访客身份的识别和过滤,从而限制访问CDN资源的用户,提升CDN的安全性。
功能 | 说明 |
配置Refer防盗链 | 您可以通过配置访问的Referer黑名单和白名单来实现对访客身份的识别和过滤,限制访问CDN资源的用户。 |
配置URL鉴权 | 您可以通过配置URL鉴权功能保护用户站点的资源不被非法站点下载盗用。URL鉴权比Referer防盗链安全性更高。 |
配置IP黑白名单 | 您可以通过配置IP黑名单和白名单来实现对访客身份的识别和过滤,限制访问CDN资源的用户。 |
配置UA黑白名单 | 您可以通过配置UsageAgent黑名单和白名单来实现对访客身份的识别和过滤,限制访问CDN资源的用户。 |
4.4、性能优化
设置加速域名的性能优化功能,缩小访问文件的体积,提升加速业务的效率和页面可读性。
扛住双11流量洪峰:凭借全国加速节点、智能弹性调度系统及安全防护能力,完美支持过亿QPS峰值,保证全球数亿买家快速浏览高清图片和视频,流畅下单。可以通过性能优化功能,对域名执行如下操作。
功能 | 说明 |
页面优化 | 当您开启页面优化功能时,CDN自动清除HTML页面冗余的注释和重复的空白符,缩小文件体积,提升页面可阅读性。 |
智能压缩 | 当您开启智能压缩功能时,CDN自动对静态文件进行Gzip压缩。通过智能Gzip压缩方式,可以有效减小传输文件大小,提升加速业务的效率。 |
Brotli 压缩 |
当您需要对静态文本文件进行压缩时,可以开启此功能,有效减小传输内容大小,加速分发效果。 |
过滤 参数 |
当您的URL请求中携带问号(?)和参数时,CDN节点在收到URL请求后,判断是否需要将携带参数的URL返回源站。 |
4.5、视频相关
可以通过设置Range回源和拖拽播放功能,减少回源流量消耗,并且提升视音频的播放效果。文章来源:https://www.toymoban.com/news/detail-452487.html
可以通过视频相关功能,对域名执行如下操作。文章来源地址https://www.toymoban.com/news/detail-452487.html
功能 | 说明 |
Range回源 | 开启Range回源功能,可以减少回源流量消耗,并且提升资源响应时间。 |
拖拽播放 | 开启拖拽播放功能后,当播放视音频时,随意拖拽播放进度,而不影响视音频的播放效果。 |
到了这里,关于阿里云CDN实践的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!