内容提要
尽管自搭自写博客不再被称为极客,但自建博客仍是程序员的追求。作者用Rust重写了自己的博客程序Pomash,取名为rsomhaP。使用TiDB Serverless作为数据库,Fly.io作为部署机器,Cloudflare R2作为图床,WebP Cloud Services作为图床代理。完成了使用rsomhaP和一众免费SaaS的博客部署。
延伸解读
全SaaS方案的优势与考量
文章展示了一种完全依赖免费SaaS服务搭建博客的路径,其优势在于免运维、高可用和弹性扩展。TiDB Serverless提供自动备份,Fly.io简化部署,Cloudflare R2和WebP Cloud Services分别处理存储与优化。但读者需注意,这种方案将博客的可用性绑定于多个第三方服务,任一服务变更免费政策或出现故障都可能影响博客运行。
rsomhaP的设计取舍
作者用Rust重写博客程序rsomhaP,坚持Markdown友好、单体架构和简洁样式,并针对SaaS环境设计部署方式。这种选择降低了前端复杂度,便于个人维护,但也意味着功能扩展可能受限。例如,程序本身不支持图片上传,需依赖外部图床,这增加了系统间的耦合,但也换来了更清晰的职责分离。
部署中的关键细节
部署时需注意数据库连接配置和区域选择。文章建议将Fly.io应用与TiDB Serverless集群部署在同一地区(如日本nrt),以减少网络延迟。同时,需提前在TiDB中创建数据库,并通过环境变量或配置文件设置连接信息。这些细节虽小,却直接影响博客的访问速度和稳定性,是实践时容易忽略的环节。
图片处理与性能优化
利用Cloudflare R2作为图床,再通过WebP Cloud Services进行图片压缩、缓存和隐私擦除,能有效提升博客加载速度并增强安全性。这种组合不仅减少了图片体积,还通过自定义Header实现了更安全的访问控制。对于图文博客而言,图片优化是提升用户体验的关键,而SaaS服务让这一过程无需自行开发。
Q&A
如何使用全SaaS搭建一个博客?
可以使用rsomhaP程序,结合TiDB Serverless作为数据库,Fly.io作为部署平台,以及Cloudflare R2和WebP Cloud Services作为图床和图片处理服务。
rsomhaP是什么?
rsomhaP是用Rust重写的博客程序,旨在简化博客的搭建和维护,保持Markdown友好和单体程序设计。
TiDB Serverless的优势是什么?
TiDB Serverless提供MySQL兼容的数据库服务,支持自动备份,适合用作rsomhaP的后端数据库。
Fly.io如何用于博客部署?
Fly.io可以作为部署平台,通过编写Dockerfile和配置文件,用户可以轻松部署rsomhaP程序。
如何使用Cloudflare R2作为图床?
Cloudflare R2可以作为图床服务,提供稳定的图片存储,用户需要进行相应的设置以实现图床功能。
WebP Cloud Services有什么用?
WebP Cloud Services用于图片压缩和处理,可以加快博客加载速度,并提供隐私擦除和水印添加等功能。