CDN加速基于ECS搭建的网站
场景介绍
ECS(弹性云服务器)是由CPU、内存、操作系统、云硬盘组成的基础的计算组件,可以根据业务灵活配置,节约大量的硬件成本。某客户将一论坛网站部署在华为云ECS上,并通过域名访问该论坛。初期业务量较小,用户访问流畅,随着业务越做越大,访问量骤增,陆续有用户反馈访问速度慢等问题。客户决定使用华为云CDN提高终端用户访问速度、提升用户体验。
方案概述
华为云CDN可以有效加速网站,为用户提供良好的体验。通过CDN加速搭建在ECS服务器上的网站,这样构造的业务系统可以在降低成本的同时,提高终端用户使用感受。
业务流程:当终端用户发起访问请求时,会首先通过CDN查找对此域名响应速度较快的CDN节点,并查询此节点是否有缓存终端用户请求的内容。如果CDN节点有缓存用户所需资源,直接将资源返回给用户;如果CDN节点无缓存,则回源请求资源返回给用户,同时将资源缓存到CDN节点。
方案优势
- 用户访问网站资源,全部通过CDN,降低源站压力。
- 使用CDN流量,单价低于ECS直接访问外网流量,可以节约50%到57%的带宽成本。
- 终端用户从距离最近的CDN节点获取资源,减少网络传输距离,保证静态资源质量。
实施步骤
- 在ECS服务器上搭建论坛网站,实施步骤请参考搭建Discuz论坛网站。
- 服务器IP地址为:192.168.1.1。
- 网站域名为:discuztest.com。
- 开通CDN服务
- 登录华为云控制台,在控制台首页左上角选择 。
- 单击“前往开通”,进入服务开通界面。
- 选择计费方式,勾选服务协议,单击“立即开通”。
- 在CDN控制台添加加速域名
- 登录华为云控制台,在控制台首页左上角选择 ,进入CDN管理控制台。
- 单击左侧“域名管理”,进入域名管理页面。
- 在域名管理页面单击“添加域名”,配置加速域名及源站信息。
- 加速域名:discuztest.com。
- 服务范围:中国大陆。
- 业务类型:网站加速。
- 源站配置:
- 回源方式:HTTP。
- 源站类型:源站IP。
- 源站地址:192.168.1.1。
- 优先级:主源站。
- 回源HOST:默认为加速域名。
- 单击“确定”,根据业务情况完成推荐配置。
配置过程大概需要5-10分钟,当“状态”为“已开启”时,表示域名添加成功
- 本地测试加速域名:添加加速域名后,为保证顺利切换不影响业务,建议先做测试再切换DNS解析,测试流程请参考本地测试加速域名。
- 配置CNAME解析:添加加速域名后,CDN会自动生成一条CNAME域名。加速域名在CDN服务中获得的CNAME域名不能直接访问,必须在加速域名的域名服务商处配置CNAME记录,将加速域名指向CNAME域名,访问加速域名的请求才能转发到CDN节点上,达到加速效果。
本实践中自动生成的CNAME域名为“discuztest.com.c.cdnhwc1.com”。
- 登录华为云控制台,在控制台首页选择“网络 > 云解析服务DNS”,进入云解析服务页面。
- 在左侧菜单栏中,选择“ 公网域名”,进入公网域名列表页面。
- 在待添加记录集的域名所在行,单击“域名”列的域名名称。本实践中对应的域名为“discuztest.com”。
- 单击“discuztest.com”,进入域名解析页面,然后单击右上角“添加记录集”,进入“添加记录集”弹出框。
- 根据界面提示填写参数配置,下表中未提到的参数可保持默认值。
参数
说明
示例
主机记录
主机记录指域名前缀。
www
类型
记录集的类型,此处为CNAME类型。
CNAME-将域名指向另外一个域名
线路类型
用于DNS服务器在解析域名时,根据访问者的来源,返回对应的服务器IP地址。
添加解析线路类型时,切记先添加默认线路类型,以保证网站可访问。
全网默认
TTL(秒)
TTL指解析记录在本地DNS服务器的有效缓存时间。如果您的服务地址经常更换,建议TTL值设置相对小些,反之,建议设置相对大些。
5分钟
值
需指向的域名。
如果没有开启CDN加速,该值为ECS访问域名;如果开启CDN加速后,该值为CDN分配的CNAME域名。
discuztest.com.c.cdnhwc1.com
- 单击“确定”,完成添加。
- 验证CNAME配置是否生效
打开Windows操作系统中的cmd程序,输入如下指令:
nslookup -qt=cname 加速域名
本实践中加速域名为“discuztest.com”。如果回显CDN分配的CNAME域名,则表示CNAME配置已经生效。
- 验证操作是否成功
登录论坛网站,浏览网页,如果可以正常访问网站,则表示加速配置成功。