数据库与后端服务总览
这部分不是为了把前端硬拽成 DBA,而是先把几个关键问题理清楚:不同数据层方案适合什么场景,接入的时候哪些地方最容易踩坑。
建议怎么读
- 先看关系型数据库:MySQL、PostgreSQL
- 再看文档型数据库:MongoDB
- 最后看 BaaS / 云服务:Supabase、Upstash
看这组内容时,重点盯这几件事
- 适用场景
- 数据模型差异
- 前端接入方式
- 性能与权限边界
如果只是想先快速判断路线,可以先看 数据层选型对比。
数据层选型对比
前端接触数据库和后端服务时,最常见的困惑不是“语法怎么写”,而是“到底该选哪类方案”。
PostgreSQL
PostgreSQL 是一个功能强大的开源对象关系数据库系统,具有强大的数据完整性和扩展性。
MySQL
MySQL 是世界上最受欢迎的开源关系型数据库之一,以其可靠性、易用性和性能著称。
MongoDB
MongoDB 是一个流行的 NoSQL 数据库,它使用 JSON 格式文档存储数据,非常适合处理大量的非结构化数据。
Supabase
Supabase 被称为 "开源的 Firebase",它基于 PostgreSQL 提供了全套的后端服务,包括数据库、身份认证、实时监控、存储以及边缘函数。
Upstash
Upstash 是专为 Serverless 和 Edge 环境设计的数据库服务,提供 Redis、Kafka 和 Vector 数据库。其核心优势是基于 HTTP/REST 的连接方式,非常适合在 Cloudflare Workers、Vercel Edge Functions 等无状态环境中使用。
Supabase 封装与实践
1. 架构:Service + Hooks + React Query
Upstash 封装与实践
Upstash 由于其 Serverless 和基于 HTTP 的特性,非常适合集成在 Next.js 的服务端架构(RSC、Middleware、Route Handlers)中。通过合理的封装,可以实现高效的限流、缓存管理和向量检索。