最近发现我三年前趁着活动使用优惠在腾讯云上购买的四核 8G 的云服务器在月底就要到期了。续费的价格十分昂贵,要三千多块钱一年。
仔细想想,我也没有什么需要在云服务器上运行的服务,基本上只有一个静态博客网站,然后就是偶尔在服务器上进行一些实验。
事实上这些需求完全可以借助 Serverless 平台来实现,而且大部分 Serverless 平台都有一定的免费额度,对于个人用途来说完全够用。
Vercel
Vercel 是一个 Serverless 平台,可以用来部署静态网站和 Serverless 函数。
Vercel 直接与 Github 集成,可以直接从 Github 仓库中部署网站,支持自定义域名,可以将自己的域名绑定到 Vercel 上(同时提供 TLS 证书),并且原生支持诸多静态网站生成器,例如 Hexo、Gatsby、Next.js 等。
我的博客(从云服务器上迁移过来)和知识库就是使用 Vercel 部署的。
Github Actions
Github Actions 是 Github 提供的一个 CI/CD 服务,可以用来自动化构建、测试、部署应用。
我的几个 Python 项目(例如html_dsl)都配置了 Github Actions,可以在每次提交代码后自动运行持续集成,主要是运行静态代码分析和单元测试,以及在新版本打了 tag 后自动发布到 Pypi 上。
Github Action 也适用于运行一些定时任务。
Github Codespaces
Github Codespaces是 Github 提供的远程开发环境,可以通过 VS Code 或浏览器连接使用,并提供每个月 60 个小时的免费额度。
腾讯云函数计算 SCF
云函数 SCF是腾讯云的无服务器执行环境。我之前在腾讯云上部署过一些 Python 函数。
之前云函数还是有一定的免费额度的,但是现在已经取消了,每个月至少要购买 12.8 元的基础额度。
并且腾讯云的函数计算的 Python 版本支持不完善,只有 Python 3.7,远远落后于最新的 Python 3.11 版本。
腾讯云对象存储 COS
对象存储 COS是腾讯云的对象存储服务。我有利用腾讯云 COS 和 CDN 服务搭建一个图床,用于存储一些在博客中使用到的图片。
Deno Deploy
Deno Deploy出自 Deno 团队是一个 JavaScript,Typescript 和 WebAssembly 的运行时。我在 Deno Deploy 上部署了一个简单的接口general endpoint,可以用于进行一些简单的 http 接口测试。
Cloudflare Workers
Cloudflare Workers 是一个 Serverless 服务,可以在 Cloudflare 的全球 CDN 网络上运行 JavaScript 代码。
Cloudflare Workers KV
Cloudflare Workers KV 是一个 Key-Value 存储服务,可以在 Cloudflare Workers 中使用。
Workers KV 是一个十分难得的 Serverless 数据库服务,并且具有免费额度。毕竟云服务厂商的数据库服务都是十分昂贵的。
利用好各式 Serverless 服务,可以避免购买、维护服务器的工作,并且具有额外的优势,比如现成的 CDN 服务。