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

本文主要探讨 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/