国外静态网站托管服务商国内速度对比及线路优化

本文主要探讨Netlify、Vercel、Cloudflare Pages、Azure Web Hosting在国内的速度对比及线路优化

以我的博客站点blog.colinx.one为例,使用hugo构建,选用的模板也很轻量没有太多奇奇怪怪的第三方组件,使用这些静态服务托管主要图个方便,不用备案而且基本流量不限。

分别挂了四个服务商的CI, 每次更新Git仓库都会自动触发构建。分别对四个默认分配的域名进行检测。

四家服务商默认设置国内速度测试对比

Netlify

colins-blog.netlify.app

Netlify在国内的速度检测

Vercel

colinx-blog.vercel.app

Vercel在国内的速度检测

Azure

nice-glacier-095b09e00.1.azurestaticapps.net

Azure在国内的速度检测

CloudFlare Pages

colinx-blog.pages.dev

Cloudflare Pages在国内的速度检测

emmm Cloudflare这在国内的速度可太拉胯了,虽说可以通过自选节点的方式曲线救国,但想了想还是算了。利用好其他三家的节点应该足够国内大部分用户访问。

—Update on 2022-05-22—

又重新测了一下cloudflare的速度,这次倒是一片绿,看来还是要运气,不太稳定。电信和联通都嗖嗖的,移动基本上全挂了。。。

image-20220522190417139

这次能连接的节点主要就两个172.66.45.34和172.66.46.222。

—end—

筛选后可用的节点

Netlify
18.140.226.100 amazon SG
54.255.56.197 amazon SG
206.189.46.168 digital ocean SG

Vercel
显示caronet,据说为AWS节点 (76.76.21.21 Anycast)
76.76.21.241
76.76.21.98
76.76.21.93
76.76.21.142
76.76.21.22
76.76.21.61
76.76.21.164

Azure
52.175.64.109 US MS
13.70.37.114 HK MS
51.124.12.35 UK

优化前

优化前使用了dnspod的解析服务做4个A记录的负载均衡,免费版套餐单记录单线路只能设置最多两个负载均衡记录,我这个是之前开通专业版套餐设置的,套餐到期了原有记录依旧保留,所以能设置四条同线路A记录负载均衡。

before

206.189.46.168  digital ocean %netlify
76.223.126.88 %vercel
18.140.226.100 amazon  %netlify
18.139.201.98 amazon %netlify 

检测一波,红了好几个省份

image-20220504222718997

慢点可以接受,线路不通可不能忍。之前粗略筛的几个节点,如今过了快两年了,线路估计也发生了变化,简单跑了一下这几条,发现这个线路现在的状况实在不咋地

trace

这圈子兜的也太大了些。。。哦原来是Digital Ocean的节点啊,那没事了。

亚马逊的节点稍微好些,没有绕道日本这么离谱的行为

trace

再来看看vercel节点的表现

trace2

这里是自选的节点,直连东京节点,好评

trace3

但是默认的AnyCast节点这个路由就稍微绕路了,看来大中华区还是得自己动手调整下线路

优化后

after

image-20220505190011635

检测优化过程就不赘述了,都是拿几个基本的工具pingtcpinghttpingtraceroute还有上文的全国网速检测网站对那几个节点挨个检测,直接上结论:

  1. Vercel的Anycast基本上都是路由到日本,但是同一个地方可能会被路由到不同的路线,比如有些IP从上海出口转日本东京,有些是从广东出口转日本
  2. Netlify的节点主要是在新加坡,提供商有AWS和Digital Ocean,实测后者的节点经常性抽风,国内流量过去会绕个大圈子,还是AWS的靠谱些
  3. Azure的静态网页托管服务现在是免费的,带宽和流量啥的妥妥够用,不过开账户有门槛,我是用Github Education Pack在Azure开了个Azure for Students订阅,每年100刀额度,到期可续
  4. Azure能用的就香港节点,其他都是去往北美和欧洲的,直接pass。对电信友好,移动和联通很不友好,饶了一大圈
  5. AWS的节点对移动和联通挺友好,对电信支持略差
  6. Vercel节点也是对移动和联通友好些

其他附加信息

  1. Netlify可自定义证书,Vercel不可以。所以要保证vercel的服务器可以把域名解析到自家服务器,不然没法续签SSL证书
  2. Cloudflare的CI啥的做的挺垃圾,起步晚,很多东西不完善
  3. Netlify可以安装插件,推送sitemap和网站安全性检测这些我感觉挺好使

最终线路设置

  • 电信和其他走Azure与Vercel
  • 移动联通走Netlify的AWS节点,以及Vercel在JP的节点
  • 海外走Vercel的Anycast IP

常用线路检测与优化工具链接

Best Trace

https://apps.apple.com/us/app/best-trace/id1037779758?l=zh

IP 批量查询

http://www.jsons.cn/ipbatch/