关于我
 

xjpvictor's Blog
小老鼠,上灯台,两只耳朵竖起来

blog 加速 (3) - 国外服务器优化中国访客访问速度


各种折腾·amazonblogvpsweb

本文最后编辑于超过2241天以前,部分内容可能已经失效

之前回国发现从国内访问我的网站速度很慢,有时候要超过10秒才能打开,经过排查发现很可能是cloudfront的原因,后来通过设置dns把国内对cloudfront的访问定向回源服务器,而不使用cloudfront。这次回国测试了一下确实是有效果的。

当时也考虑过使用国内的cdn,并且也发现了这个做法因为备案的原因不可行。所以还是购买了一个香港双线CN2的vps,并设置了nginx反向代理,把国内访问静态文件定向到这个服务器,再由这个服务器访问cloudfront。

原有设置,使用cloudfront访问静态文件

这是之前的设置,国内通过cloudfront访问静态文件,虽然cloudfront在香港有服务器,但是因为线路没有优化,所以访问速度很慢,再加上墙对cloudfront的干扰,导致使用cdn反而拖慢了整个网站的访问。

cloudfront_map

cloudfront各地访问速度

cloudfront_summary

从ip来看确实是香港服务器。然而速度并没有因为地理位置近而更快。

cloudfront_hongkong

cloudfront香港服务器

甚至可以发现个别访问会绕道美国再回来。

cloudfront_trace

关闭cdn

发现cloudfront速度慢以及被干扰之后,尝试对国内ip关闭cdn,直接访问源服务器。可是速度还是较慢。

original_map

直接访问虽然速度慢,可是却很稳定,不存在被干扰的现象。也不会绕路。在实际使用时,直接访问会比使用cloudfront快,因为没有了干扰。

使用香港服务器

使用香港服务器后速度快了很多,因为选择的是采用了双线CN2的服务器,线路优化很理想,而因为避免了cloudfront的被干扰现象,访问速度很理想。

从跟踪来看,线路的优化还是不错的。

在使用了geolocation的dns以后,就可以区分中国和海外对静态文件的访问,中国访问香港服务器,海外直接访问cloudfront。

中国访问香港服务器

海外访问cloudfront

模拟访问

之前都是测试的ping值,而从各地模拟访问的结果来看,效果也很明显。

之前

现在

实际效果

测速网站的结果只是用来参考的,最终还是要自己亲自测试。因为测试不同的访问方式只需要切换dns就行,所以趁回国测试了一下。基本上来说直接使用cloudfront基本不可用,而比较国内ip访问美国的源服务器和香港服务器来说,香港服务器确实加快了网站的整体访问速度,但是因为香港服务器普遍带宽很小,所以在大图片的下载上还是比不上在国外访问cloudfront,而是和直接从源服务器下载速度差不多。

cloudfront最大的问题还是被干扰,如果使用自己的域名cname过去,暂时也没观察到被干扰的现象,不过因为线路原因,cloudfront的速度在国内并没有优势。

另外发现google adsense确实可以在国内正常展示,但是mailchimp的cdn貌似被干扰的很严重,基本上要10秒以上才能加载出来,甚至是无法加载。

结论

方案一:如果不想折腾或者对成本比较敏感,用自己的域名cname到cloudfront,然后所有静态文件通过这个域名访问。但是不排除cname也会被干扰。比较好的做法是区分国内外流量,国外流量cname到cloudfront,国内流量cname回源服务器。

方案二:如果愿意多管理一个服务器,也不介意成本的话,选一个比较好的香港双线CN2的vps,然后设置dns,把国内对静态文件的访问定向到这个vps,并做好缓存。这么做对大文件的效果有限,但是对类似css和js之类的小文件加速效果比较好。另外对动态内容也可以使用反代,避免了国内网络到国际网络的瓶颈,当然这样就要再考虑两个vps之间的速度了。

这两个方案成本上相差比较多,但是效果其实区别并不明显,对真实访客来说应该是没有区别的,除非原有的vps速度真的很慢或者被干扰了,所以主要还是看自己喜不喜欢折腾了。不管是什么方法,都推荐网站采用https,避免被封。

Update: 2017/11/08
针对静态文件,区分了图片与其他文件,国外均通过cloudfront访问,国内访问图片会连去美国服务器,其他文件会连去香港服务器。

Update: 2018/02/27
香港的vps选择实在是太少,而且带宽太小,之前用的ufovps,然而在meltdown和spectre漏洞发生以后,却没有打补丁的计划,所以还是抛弃了。最近改为了使用阿里云国际版的新加坡服务器,效果很不错,新加坡的CN2线路,速度很好。

本文 "blog 加速 (3) - 国外服务器优化中国访客访问速度" 由 K. Huang 首先发表于 xjpvictor's Blog 并以 CC BY-NC 4.0 许可证发布 © 2017
转载注明引用来源 https://blog.xjpvictor.info/2017/10/blog-accelerate-3-for-china-visitors-on-overseas-server/


推广:使用 Vultr 搭建属于你自己的博客,每月低至 2.5 美元,全球多数据中心,稳定高速

打赏我

2条评论

  1. 想请问下博主是用什么网站/软件做测试的?

    回复

评论

你的邮箱地址不会被公开。必填项以 * 标出

无意义或不相关评论将被删除

允许使用以下html标签:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

你可以上传文件,粘贴代码或长文至 Drop.it.r

本博客是言论不自由博客,评论只接受询问及赞同,不同观点请出门左转微博/发表于自己的博客。谢谢合作!

评论意味着你 同意 上传部分私人数据,包括邮箱和 IP, 这些数据不会被分享给第三方,不会用于商业用途或再推广用途。

更多相似文章