如想获得最佳浏览体验,请拜访:https://blog.projectoms.com/p...
*本文是自己第一次写技术文章,如有有余请斧正,谢谢!
让DNS很快
家喻户晓,想让人胜利就要从娃娃抓起。所以想让一个素材零碎变得超快则要从DNS解析做起。
能够看到,我的DNS外表上看起来是自建的,实际上我采纳了一种自欺欺人的重路由的办法放慢了DNS速度。
(外面还有阿里云DNS记录的起因和影响咱们下文会说)
有人就要问了,马老师啊这个产生甚么事了阿里云VIP默认DNS提供的路由不香吗?干嘛还要费尽心思自路由呢?
这你就不晓得了,在我测试过后,发现阿里云个人版DNS之所以比贵4倍的企业版速度慢,是因为企业版DNS有地区解析,会依据国内外返回不同节点(阿里云尽管有Anycast的节点,但其余都不是),这样如果国内用户轮询到一个美国节点必定速度将大打折扣。
如图,国内查问会一股脑把所有地址丢进去,包含海内节点,所以速度令人担忧
而企业版在国内查问时返回的均为国内节点,所以速度外表上看起来比个人版快了一大截
能够看到,企业版在香港机器上返回的均为海内节点,所以看到这里你也晓得自路由的重要性了吧
上面我来说一下我是如何实现自路由的。
首先,咱们要失去所有节点IP,其实间接Dig就行,但我为了保险起见,还是寰球PING了一下,确认和Dig一次的节点数是统一的。
接下来,就是利用阿里云自带的分区解析性能,将IP分为默认和海内两组,当然IPv6只有国内所以默认就好。
这里要留神,阿里云有一个IP是Anycast的,且国内外都有节点,所以咱们把这个IP(140.205.1.1)既退出默认,又退出国外即可.
这里还有一个问题,咱们要用域名projectoms.com解析projectoms.com,为了防止递归,须要为NS服务器增加胶水记录(Glue Records),相干原理自行谷歌。
胶水记录需到域名注册商处增加,我的是阿里云。
阿里云管胶水记录叫自定义DNS Host,依照阐明增加IP即可,实现后咱们需期待24-48小时让这些信息缓存到.com DNS服务器中,实际上我等了约10小时就能够了。
接下来就是把DNS改成咱们本人的DNS了,功败垂成!
这里留神,尽管Dig查问到的NS记录仍有阿里云的,不过个别DNS解析器都以注册局列出的DNS服务器为准,所以咱们的自路由是无效的。
让建设连贯很快
家喻户晓,建设HTTPS须要TCP握个手而后SSL再握个手,其中因为RSA长度问题SSL握手往往要花费数百毫秒,为了缩小用户白屏等待时间,ECC椭圆曲线算法被采纳了。
目前因为这个算法太新了,旧设施(XP)不反对,所以兼容性较差,然而我网站访问者个别都应用Win 10,Chrome. 简直没有用IE拜访的。所以我集体感觉ECC裸奔其实是没问题的(因为Android 4以下不反对,所以兼容性还是比拟差的),至多我的用户中没有XP用户,且CDN多不反对双证书。所以2021年4月起你能够看见我的网站(国内)仅有ECC证书。
目前RSA证书没到期先勉强用着,等4月咱们会换成ECC证书。
2021 年 3 月 21 日,正式启用全新 ECC 证书。
RSA
ECC
如图,握手工夫在Server和Client配置雷同时速度有显著晋升。
让CDN回源很快
家喻户晓,因为中国的非凡网络环境,海内内容都十分的慢,而且因为咱们将素材资源存储在GitHub上,而GitHub仅在美国外乡有数据中心,所以让CDN回源很快十分重要。
(留神!本办法已临时生效,且短期不会复原!)最开始,咱们采纳的是Vercel。Vercel是一个无服务器函数平台,然而同时Vercel也提供基于AGA的弱小内容散发网络,Amazon的中国网络品质也不必我多说,大家也是能体验进去的。所以咱们采纳了Vercel作为源站。
Vercel管理层有中国人,所以实践上对大陆相对来说比拟敌对,然而近期因为晓得和白嫖Vercel的人越来越多,导致了AGA网络抽风。最近Vercel决定将大陆IP对立路由到美国的节点,导致速度直线降落,基本无法忍受(海内速度均失常),咱们便决定采纳新的办法解决大陆CDN回源。
当初咱们应用的解决方案是:一开始,咱们想利用在北京的一台阿里云VM将GitHub的内容存到本地,但因为阿里云到海内是电信的163民用网,速度也没有太大恶化,最终咱们采纳在香港的一台GCP从GitHub上下载内容,再利用同步技术从北京的阿里云机子被动拉取香港GCP上从GitHub下载的资源素材文件,同步速度能够承受。
因为CDN回源设置的机子在国内,所以当初回源速度间接腾飞。在我家的本地带宽曾经能够跑满北京阿里云服务器带宽了(捂脸笑...)
最初一公里:让CDN边缘节点很快
国内
这个...其实没有什么好说的,鹅厂的CDN边缘节点品质还是不错的。并且在和鹅厂工作人员一番 切 磋 之后,我有了IPV6节点的使用权(尽管当初所有人都有了呜呜呜)目前的惟一比拟遗憾的是我的减速类型不反对TLS 1.3,这个置信鹅厂很快就能解决。
海内
Vercel把AGA调的十分好,这个其实也没有什么遗憾、毛病之类的,要非要找个毛病进去,那就是AGA不反对IPV6,这个Amazon预计会....解决吧。
最 终 成 果
PING
速度测试
本地带宽实测:未击中缓存
本地带宽实测:击中缓存
如果你想用这个资源站,欢送与我分割:tom@projectoms.com!如果感觉我的文章有用,欢送点赞转发赞叹!您的反对就是我创作的能源,非常感谢!!!