第四篇 避坑与最佳实践

带新人跑长途的老司机,车里往往有一个不起眼的本子,记的全是自己这些年刮过蹭过、差点翻车的地方:哪个路口视野盲区大,哪段路雨后容易积水,哪种侥幸心理不能有。这一篇,就是我的事故记录本。

前三篇聊的是 Firebase 各个产品的用法和心得,属于把车开起来;这一篇要聊的是怎么不开进沟里。里面收录的坑,没有一条是从文档里抄来的,每一条背后都有真实的深夜报警、真实的账单、真实的返工。写出来只有一个目的:让这些学费,我交过就够了。

本篇一共四节,节奏是从惊险到从容:

  • 4.1 安全避坑:三个最经典的事故现场——配置当私密、规则裸奔、私钥进仓库,外加数据导出的隐性风险。
  • 4.2 性能避坑:查询怎么设计才不失控,索引怎么建才不泛滥,监听怎么用才不拖垮客户端。
  • 4.3 工程化心得:多环境怎么隔离,CI 部署怎么管凭据和改动面,模拟器怎么把测试成本打到接近零。
  • 4.4 迁移心得:什么时候该认真考虑离开 Firebase,以及决定走了之后,怎么平滑地走、不伤筋动骨。

赶时间的话,按下面这张速查表直接翻对应小节:

坑位 严重度 翻哪节
把 Firebase 配置当私密信息 ★★★★ 4.1
安全规则开发期全放开、上线忘收 ★★★★★ 4.1
Admin SDK 私钥进了前端或公开仓库 ★★★★★ 4.1
读规则过宽被整库爬走 ★★★★ 4.1
整表拉回客户端再过滤 ★★★ 4.2
复合索引无节制膨胀 ★★ 4.2
一个大监听常驻全应用 ★★★ 4.2
热点文档高并发写 ★★★★ 4.2
dev 和 prod 混用一套项目 ★★★★ 4.3
CI 凭据管理混乱、全量部署 ★★★★ 4.3
规则变更没有单测兜底 ★★ 4.3
成本与合规压力下仓促迁移 ★★★★ 4.4
账号迁移方案没提前想 ★★★★ 4.4

最后说一句心态:避坑经验不是拿来制造焦虑的,恰恰相反——知道坑在哪里,脚下才敢踩油门。愿这本事故记录本,能帮你把别人的教训变成自己的常识。