后端即服务
sh0 在您自己的服务器上提供完整的 BaaS 技术栈——数据库、API、认证、实时通信和函数——不受厂商锁定。
什么是 BaaS?
后端即服务(BaaS)为前端和移动开发者提供现成的后端:带有自动生成 API 的数据库、认证、实时消息和无服务器函数。您无需构建和维护自定义后端,只需配置服务并将其连接到客户端应用。
流行的托管 BaaS 平台包括 Supabase、Firebase 和 Appwrite。sh0 将同样的能力带到您自己的基础设施上——自托管、开源组件、固定定价、完全掌控。
sh0 BaaS 技术栈
sh0 的 BaaS 由四个托管服务组成,每个服务都基于一个久经考验的开源项目:
| 服务 | 引擎 | 用途 |
|---|---|---|
| PostgREST API | PostgREST | 根据 PostgreSQL 模式自动生成的 REST API |
| 认证 | Logto | 符合 OIDC 标准的认证,支持社交登录和管理控制台 |
| 实时通信 | Centrifugo | WebSocket 频道、在线状态和发布/订阅消息 |
| 函数 | Deno | 无服务器 TypeScript/JavaScript 函数 |
这四个服务均由 sh0 管理——一键部署、自动配置 SSL,并连接到您的 PostgreSQL 数据库服务器。
与 Supabase 和 Appwrite 的对比
| 功能 | sh0 | Supabase | Appwrite |
|---|---|---|---|
| 托管方式 | 自托管(您的服务器) | 托管或自托管 | 托管或自托管 |
| REST API | PostgREST | PostgREST | 自研 REST API |
| 认证 | Logto (OIDC) | Supabase Auth | Appwrite Auth |
| 实时通信 | Centrifugo | Realtime (Elixir) | 实时(WebSocket) |
| 函数 | Deno | Deno | 多种运行时 |
| 定价 | 固定许可费 | $25/月起(Pro)+ 计算与用量 | 套餐配额,超出部分另计 |
来源(2026 年 10 月 13 日核实): Supabase 定价· Supabase 文档:使用 Docker 自托管· Appwrite 定价· Appwrite 文档:自托管
Tip
sh0 不只是 BaaS——它是一个完整的部署平台。除 BaaS 服务外,您还可以获得应用托管、Git 部署、Docker Compose、监控、备份等功能。
架构
每个 BaaS 服务都以托管容器的形式运行在您的服务器上,由 sh0 编排:
- PostgREST 直接连接到您的 PostgreSQL 数据库服务器,并将数据表暴露为 REST 端点。
- Logto 作为独立的认证服务器运行,将用户数据存储在由您掌控的 PostgreSQL 数据库中。
- Centrifugo 作为独立的 WebSocket 服务器运行。您的后端通过 HTTP 发布消息;客户端通过 WebSocket 连接。
- Deno 作为沙箱运行时执行您的 TypeScript 函数,通过 HTTP 调用。
所有服务都通过 Caddy 获得自动 SSL,并由 sh0 提供域名路由和健康监控。它们可以通过内部 Docker 网络相互通信。
快速开始
要开始使用 BaaS 功能,您需要:
每个服务都是独立的——只启用您需要的服务。从各个指南开始:
- PostgREST API —— 自动生成的 REST API
- 认证(Logto) —— 托管认证服务
- 实时通信(Centrifugo) —— WebSocket 消息
- 函数(Deno) —— 无服务器 TypeScript