传统模式概述
传统模式 是云开发自上线以来的运行模式:环境由文档型数据库、云存储、身份认证、云函数、云托管等能力组成,各能力独立开通、分别配置权限。创建环境时没有选择 PostgreSQL 数据库的,即为传统模式环境。
新环境建议直接使用 PG 模式
PG 模式仅新建环境支持,存量传统模式环境不支持升级。新项目建议创建 PG 模式环境,详见 PG 模式概述。
能力构成
| 能力 | 说明 |
|---|---|
| 文档型数据库 | 以文档为单位存储业务数据,权限由安全规则(文档级表达式)控制 |
| 云存储 | 环境内置对象存储,上传后返回 fileID,权限同样由安全规则控制 |
| 身份认证 | 提供多种登录方式与用户管理,见身份认证概述 |
| MySQL 数据库 | 关系型数据库实例,在控制台开通后通过 app.rdb() 访问,见初始化 |
| 数据模型 | 在文档型数据库之上声明式定义数据结构与权限,见数据模型概述 |
| 云函数 / 云托管 | 服务端计算能力,见云函数与云托管 |
与 PG 模式的差异
| 传统模式 | PG 模式 | |
|---|---|---|
| 数据库 | 文档型数据库为主,可另开 MySQL | PostgreSQL 实例,基于 PostgREST 自动暴露 RESTful API |
| 权限 | 数据库与云存储各写一份安全规则(JSON 表达式) | 表级 GRANT + 行级 RLS,权限即 SQL |
| 云存储 API | app.storage.from(),上传返回完整 fileID | 基于 PostgreSQL 原生 Bucket,路径参数为 Bucket 内的对象名 |
| 身份认证数据 | 由认证服务管理 | 存于 PostgreSQL 的 auth schema,可在 SQL 中读取当前用户身份 |
只在传统模式可用的能力
以下能力目前只在传统模式环境可用,PG 模式环境暂不支持:
相关文档
- JS SDK v3 参考:以 PG 模式为主干编写,传统模式专有内容见侧边栏 的「传统模式(PG 模式不适用)」分组
- PG 模式概述:需要判断要不要迁到 PG 模式时,先看这一页
- v2 到 v3 迁移指南