其实这个博客重复搭建了3-4次,最开始用的是Next主题,后来不满意就改用Butterfly。现在回头看,也没想的那么难,很多不理解的东西,现在随着上手和熟练,自然而然就懂了,其中确实碰到很多问题——很多一问三不知的问题,作为小白,开始的尝试和遇到问题确实让人十分头大,但克服之后就柳暗花明,山清水秀……

不过对于这个网站,还是有不满意的地方,比方访问速度,这也是自己遇到的一个大坑——这个坑浪费了不少时间和精力。

当时总想着提高网站速度,于是费劲搜索了很多东西,大致浏览了很多文章——看的也不大明白,因为是小白,所以很多东西完全不知所以然——不能理解到底是什么意思,例如:CND,netlify,Vercel,jsDelivr等等。

想当然的认为就是照着操作一遍就成,访问速度就可提起来了。不过这个过程有得有失,起码开始理解一些东西了。这里记录一下自己的理解,以免以后再次入坑。

CDN是什么?

CDN的全称是Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输得更快、更稳定。简单讲,就是给网站提速,让网站的访问速度更快。

Netlify和Vercel是什么?

Netlify和vercel是两家云商平台服务商,都提供静态网站托管和CDN服务,这个和Github pages是一样的,支持从 Github, GitLab, Bitbucket 等代码仓库中自动拉取代码 然后进行项目打包和部署等功能,然后生成网页。简单说,它们让你无需摆弄服务器即可将网站放到网络上。

相对于github的pages 或其他提供静态页面托管的服务,Vercel和Netlify 的访问速度更快。我们博客就是github提供的pages服务。(我们可以把网站部署到它们上面,这样就可以免费享用CDN加速了,访问速度快于github pages。

这里网上搜索了一些对比。


GitHub Pages

  • 速度:尚可,并不很慢,但有时候会抽风。

  • 自定义域名:一个。

  • 限制:

    • 单个文件大于50MB将受到警告。

    • 单个文件大于100MB无法上传。

    • 仓库大小「强烈建议」少于5GB。

    • 每小时可构建10次。

    • 每月流量100GB。


Netlify

控制台无法访问。

  • 部署方式:GitHub、GitLab、BitBucket仓库自动拉取以及本地CLI直接推送。

  • 速度:较GitHub Pages要快,但是稳定性差上不少,部分时候可能直接出现无法访问。

  • 自定义域名:多个。

  • 限制:
    对于每个账户:

    • 同时只能构建一个站点。
    • 每月流量100GB。
    • 每月构建时间300分钟。

Cloudflare Pages

  • 部署方式:GitHub仓库。

  • 速度:与GitHub Pages相似。

  • 自定义域名:最多10个;

  • 限制:

    • 每月构可构建500次。
    • 文件数量最多2w个。
    • 单个文件大小不得超过25MB。

Vercel

  • 部署方式:与Netlify相同,支持GitHub、GitLab、BitBucket仓库自动拉取以及本地CLI直接推送。

  • 速度:在所有方案中最快且最稳定。

  • 自定义域名:多个。

  • 限制:

    • 每日可构建100次,但每小时不超过32次。
    • 单个Git仓库支持连接3个Vercel项目。
    • 每次构建时长最多45min。每月总计不超过100h。
    • 每月带宽100次。

什么是jsDelivr?

jsDelivr是一个免费、开源、不限带宽的CDN公共库,可以提高访问速度。不过访问地址要通过jsDelivr,比方:访问Github仓库,访问地址是:https://cdn.jsdelivr.net/gh/user.github.io/respo@0.0.2/img。