使用AWS的CloudFront做海外加速

好吧,经过了几次折腾之后,网站在国内访问已经非常快速稳定了,下面来研究一下境外的用户,要怎么让他们也能高速访问~~~

阿里云的CDN本来有境外节点,但是最近全部处在不能用的状态,官方只是在帮忙文档里把几个节点列了出来,却不开放申请。于是只能自己找境外的CDN了~~~

分线路域名解析

让国外用户访问国外的服务器,国内的用户访问国内的服务器,要想做到这一点,就要在DNS解析的时候来分一下线路,本来这个功能DNDPod是免费提供的,后来就不提供了,现在DNSPod的免费用户只能分联通移动教育网什么的,但是好在阿里的云解析还是提供了,在这个服务在万网里,可以单独设置海外线路的解析。只需要将国内的服务器设置给默认线路,将国外服务器设置给海外线路就可以了,过程非常简单,就不多说了。

使用AWS

AWS也算做云计算的鼻祖了,阿里云基本上是在做境内版的AWS,各项功能也越来越齐全了,也跟Amazon一样是因为做电商才有这么大的服务器需求和用户量以及流量,再逐渐的开放给大家享用的。
先来看看AWS有些啥服务:

QQ20150123-5

主要的服务有:
EC2相当于阿里云的云主机ECS
S3相当于阿里云的开放存储OSS
Glacier相当于阿里云的开放归档OAS
CloudFront相当于阿里云的CDN
RDS相当于阿里云的关系数据库RDS
DynamoDB相当于阿里云的开放结构化数据库OTS
ElastiCache相当于阿里云的开放缓存OCS
VPC相当于阿里云的专有网络VPC
Route 53相当于阿里云的云解析
CloudWatch相当于阿里云的云监控
Elastic Beanstalk相当于阿里云的弹性伸缩ESS
SQS相当于阿里云的消息队列MQS。。。

同时AWS还有像邮件发送,云端桌面以及企业内部的安全存储服务。相对来讲,AWS比阿里云的服务要成熟得多,用户当然也是多得多,Identity & Access Management做的比阿里云好太多了。。。不过鉴于我国网络国际出口的问题,显然没有办法使用AWS做为国内用户的服务器。而且AWS的本地化只有介绍页面,后台什么的都还是英文的~~

现在AWS很厚道的提供了一整年的免费体验功能,体验的EC2为tiny级别的实例(1核/1G)每个月运行750小时,好处是没有数量限制,只要总时间不到750小时就不会额外收费,如果只有一个实例的话,是怎么样都不会超过750小时的,31天只有744小时~

可以自由配置30G的存储,很厚道的是可以选择SSD。于是我分了10G给系统盘,20G用于数据。

它的SSH连接验证方式是需要下载一个证书文件,然后每次只要在连接的时候包含这个证书文件就可以了,不需要密码。好处是安全了很多,缺点是登陆的不是root账号,基本上执行什么操作都要sudo。还有就是它默认的安全设置入口流量不是公开的,这个要去设置一下才能连接。不得不说在国内连一台国外的服务器真心很卡啊。。。

连上去之后就和阿里云的服务器一样了,需要先格式化数据盘,挂载数据盘,然后安装Apache/PHP/FTP并配置。。修改用户权限什么的,这些跟在阿里云上一样,就不用细说了。设置好了vhost以及DNS解析就可以访问了~~~

AWS的计费方法非常非常复杂,各种操作都是收费的,相当于阿里云的按量付费,所以一旦超过免费体验的部分,就可能会被扣钱,要先看清楚并做好心理准备。另外RDS是超级贵的,基础价格远超过EC2。

使用S3和CloudFront

S3有了OSS的基础之后,上手很方便,界面其实比阿里云还烂。。还有就是它的权限,需要在上传的时候指定所有人可访问,否则别人是访问不了的。当然传完之后也可以设置某一个目录为public。S3给免费用户提供了5G的存储空间,足够用了。

从S3设置CloudFront非常方便,选一下就可以了,CloudFront给免费用户提供了50G的流量~~~

CloudFront的开通需要提供一个Business URL,AWS会发邮件给你,只要直接回复就可以了,这个跟是不是商用的没关,换句话说,就是需要你用一个自己域名的邮箱账号把自己的域名发过去~~用于验证这个域名是属于你的。。。大概过半个小时就可以使用了。

QQ20150123-7

至于cnsjw.cn就没办法搬到AWS上了,不然更新起来太麻烦了,所以就在境外用CloudFront来做一下CDN加速就可以了。

下面来设置一下cnsjw.cn的全站CDN以及OSS的CDN。全站CDN是比较容易设置的,只要把源设为www.cnsjw.cn,剩下都不用设置,然后绑定一下CNAME就可以了。。。

QQ20150123-8

至于图片那部分是放在阿里云OSS上的,绑定到img.cnsjw.cn之后,再用阿里云的CDN加速,设置这个就麻烦一点,因为源的地址和分发的地址一致,如果我设置源为img.cnsjw.cn,一旦把img.cnsjw.cn的国外线路解析做到CloudFront上,它的源就悲剧的成了自己。。。所以我需要在阿里云的OSS上再绑定一个二级域名用于给CloudFront做源。

这里看一下各地ping的值对比:
只用阿里云CDN的话:对于国外的用户来说延时还是有点高的。

QQ20150123-2

加了CloudFront之后:国外的延时小了很多很多。

QQ20150123-3

QQ20150123-10

总结
AWS可以说是阿里云的前辈,多看看前辈是怎么做的其实挺好的,上手门槛还是比较高的,看网上很多人在吐槽他们的服务,工单没人回什么的,需要买高级的服务才会得到更好的支持,当然对于免费用户来说这也是正常的。

另外需要注意的是AWS的一切服务全是收费的,包括安全,监控之类的,而且它不像阿里云是扣费的,扣到0就暂停服务了,它是绑定信用卡的,那可是无底洞。。一旦体验期到了,这些费用都会出来,一定要看好价格表,慎重选择要开通的服务。

经过使用阿里云的CDN和RDS服务优化网站的访问速度WordPress使用阿里云OSS及Super Cache和这篇文章,就把整个网站优化和部署都讲的差不多了~~~各位站长们遇到问题要找到问题在哪,重启是解决不了问题的~~~我的阿里云服务器也差不多稳定的跑了200多天了~~~

暂时就把eitsh.com和reco.so的页面放在EC2上,静态文件放在S3上,和cnsjw.cn的全部静态文件一起使用了CloudFront的CDN加速。通过DNS分了线路~~~ 这样第一次访问的话可能比以前还要更慢,但是只要有人访问过这个文件有了缓存,速度应该就比以前快多了。在海外的小伙伴可以来体验一下速度如何~~~

评论请移步微信公众号

, , ,


打赏
点击这里,长按识别二维码,即可关注我们的公众号