零基础设施费用挑战:我如何用免费服务搭建个人工作室
独立网站开发

零基础设施费用挑战:我如何用免费服务搭建个人工作室

2 分钟阅读

记录我如何依靠免费套餐搭建个人工作室与营销作品网站,以及在数据库迁移、证书链和主备架构中逐步解决问题的过程。

标签

#作品集#作品集

项目概述

没有预算,也没有计算机科学学位,能否做出像样的 Web 应用?我给自己设定了一项挑战:完全使用免费套餐搭建个人工作室与营销作品网站。这段经历不只是为了完成一个网站,也是一次在不增加基础设施费用的条件下解决实际问题的尝试。

最初的障碍

我的设想是打造一个“持续在线”的作品网站。最初选择的 Neon 很适合开发,但项目当时使用的免费套餐只有 50 小时计算额度。应用上线不到 24 天就触及上限,让我认识到必须仔细核对免费服务的边界,并寻找更适合持续运行的方案。

转向 Aiven

后来,我转向 Aiven。当时它提供的持续运行免费数据库套餐,符合我通过 Uptime Robot 监测应用的需求。但迁移并不顺利:成功使用 pg_restore 恢复数据后,我遇到了 self-signed certificate in certificate chain 错误,也就是证书链中存在自签名证书、未被当前信任配置接受的问题。

问题解决过程

我开始使用 openssl s_client 检查证书链,发现问题在于 Node.js 没有信任所需的两部分证书。随后,我将相关证书拼接为证书包,配置 NODE_EXTRA_CA_CERTS 环境变量,让 Render 上的 Node.js 服务能够信任完整证书链。

最终架构

这一阶段完成的架构由 Render 上的两个 Strapi 实例组成,一个作为主实例,另一个提供只读备份;Aiven 提供数据库,定制 Cloudflare Worker 负责请求调度。它让我在基础设施费用为 0 美元的条件下,进一步探索主备服务与可靠性设计。

结论与要点

这次实践让我认识到,免费套餐也能支撑有一定复杂度的个人项目,但前提是理解资源限制,并愿意排查迁移、证书与服务依赖等问题。对我这个非计算机专业出身的开发者来说,最大的收获是逐步建立了面对基础设施问题时的分析与解决能力。