Vibe Tutorial
数据持久化与数据库

7.3 后端方案选择

Tip

了解不同的后端部署方案,选择最适合独立开发者的"快车道"。


1. 为什么要学这个?

你想做一个 App,功能只是简单的"用户留言"。

如果你选错了路(自建服务器): 你需要买服务器、装 Linux、装数据库、配防火墙、搞域名、申请 SSL 证书、配置 Nginx... 一周过去了,你还在调服务器配置,一行业务代码都没写。

如果你选对了路(BaaS): 注册账号,点击"创建",1分钟获得全套数据库和 API。

选择 BaaS,让你从繁琐的运维泥潭中彻底解脱,把节省下来的那一周时间,用来把你的产品推向市场。


2. 核心概念

📝 核心比喻:部署后端 = 解决了住的问题

2.1 🛠️ Self-hosted (自建) —— 买地盖房

  • 做法:买云服务器 (EC2/阿里云),自己安装 MySQL/Postgres。
  • 优点:房子完全属于你,想怎么装修就怎么装修,没有房租(但有地皮费)。
  • 缺点
    1. :接水电、通网线、修屋顶(运维)全得自己干。
    2. :盖不好容易塌(宕机),还容易被贼偷(黑客攻击)。

2.2 🏨 BaaS (后端即服务) —— 五星级酒店

  • 做法:使用 Supabase / Firebase。
  • 优点
    1. 拎包入住:水电网、保洁、安保(扩容、备份、安全)都有专人搞定。
    2. 极速:你只管住(写业务代码),不用管房子怎么盖。
  • 缺点
    1. :长期住酒店肯定比自己盖房贵。
    2. 受限:不能随意砸墙改格局。

Vibe Selection: 本教程推荐 Supabase。因为它底层是标准的 PostgreSQL。这就像是住酒店,但家具都是标准的,万一酒店倒闭了,你可以把家具打包带走(导出数据),无缝搬到另一家。这就叫 "不被锁定" (No Vendor Lock-in)

决策流程图

graph TD
    A[开始新项目] --> B{有专门的运维队友吗?}
    B -- 有 --> C[自建 / 云托管 RDS]
    B -- 没有 --> D{是简单的Demo吗?}
    D -- 是 --> E["SQLite (本地文件)"]
    D -- 否 --> F["Supabase (BaaS)"]
    
    style F fill:#c8e6c9,stroke:#2e7d32

3. 适用场景

🏷️ 方案 🎯 适合谁 ⭐ 推荐指数
Supabase (BaaS) 独立开发者、创业公司MVP、不想搞运维的人 ⭐⭐⭐⭐⭐
Docker 自建 极客、只有内网环境、预算极其有限 ⭐⭐⭐
阿里云 RDS 中大型公司、预算充足、数据极其重要 ⭐⭐⭐⭐

4. 避坑指南

❌ 不要这样做 ✅ 应该这样做 💡 为什么
一上来就买3年服务器 先用 BaaS 的免费额度 99%的项目活不过3个月,别浪费钱。等用户量大了再迁移也不迟。
深度依赖 BaaS 的私有功能 只用标准的 SQL/Postgres 功能 防止厂商跑路或涨价时,你没法迁移数据(被套牢)。
以为云服务永远不挂 即使是云服务,也要定期导出备份 亚马逊/谷歌都有挂的时候,数据在自己硬盘里才最安全。

5. 真实案例

Story

2016年,Parse.com 的关闭灾难

2013年,Parse 是当时全球最火的 BaaS 平台,被 Facebook 收购后,几十万开发者把身家性命押在它上面。2016年,Facebook 突然宣布关闭 Parse。一夜之间,几十万个 App 被迫在一年内通过极其复杂的流程迁移数据。很多小团队因为技术实力不够,无法完成迁移,直接随着 Parse 的关闭而倒闭。

Vibe心法:效率决定生死,标准决定退路——起步选 Supabase 追求极速,但一定要选基于开源标准 (Postgres) 的技术,确保当巨头离场时,你有随时"搬家"的底气。


6. 本章小结

  1. 🚀 起步要快:初期不要在运维上浪费一秒钟,首选 Supabase。
  2. 🔄 退路要稳:选择开源标准 (Postgres),拒绝厂商锁定。
  3. 💾 数据在手:无论服务商多大牌,定期把数据备份到自己手里。