功能简介
能力矩阵把结论分成 SUPPORTED、APPBASE_ENHANCED、PARTIAL、NOT_EXPOSED 与 NOT_SUPPORTED。前两类可公开使用;PARTIAL 必须连同条件和缺口一起阅读;后两类不会作为产品能力发布。
当前支持范围
- 消息触达(PARTIAL):API 与 SDK 可管理 Provider、Topic、Subscriber,并发送邮件、短信和推送;当前 Console 导航隐藏入口,实际发送还依赖外部 Provider。
- 站点托管(PARTIAL):在启用 Sites 且准备好构建、运行时和代理组件的实例中,可部署静态或服务端渲染站点。
- 多语言 SDK(PARTIAL):仓库提供 Web、移动端和多种服务端语言的 SDK 源码、生成产物与类型契约;具体包是否已发布须按语言和版本单独确认。
- Schema Version 比较(PARTIAL):提交 Schema Version 时会自动与活动结构比较并生成执行计划;当前没有独立的只读差异预览接口。
- Schema Version 重试(PARTIAL):待处理版本支持幂等续跑;失败版本需要修正目标结构后重新提交,当前没有独立 Retry 接口。
- 网络访问控制(PARTIAL):内置 CORS、Origin 校验、HTTP 与 Realtime 限流、Project API 开关;DNS、证书、代理和跨网络连通性仍由部署环境负责。
- 自托管部署(PARTIAL):提供 Docker Compose 与 Kubernetes/Helm 自托管资产;生产升级、容量、备份恢复和制品门禁必须由目标环境另行验证。
适用场景
- 在架构评审前快速筛除未公开或未实现能力。
- 核对 PARTIAL 能力需要补齐的部署、Console 或发布条件。
- 为首页、Docs 与销售材料提供同一事实口径。
前置条件
- 使用本页标注的 origin/main SHA。
- Candidate-only 能力同时核对 Backend 与 Frontend Candidate SHA。
- 对目标环境执行独立的容量、网络、Provider 与制品核验。
Console 操作路径
Console 不展示完整矩阵。具体入口请转到相应能力页;入口缺失、隐藏或受开关控制时,不得仅凭后端路由推断功能完整。
SDK 示例
SDK · TypeScript
import { Client } from 'appbase-web-sdk';
const client = new Client()
.setEndpoint('https://<APPBASE_HOST>/v1')
.setProject('<PROJECT_ID>');
// 以实际 SDK 导出为准;例如 Web SDK 有 REST 对应的核心服务。
import { Account, TablesDB, Storage, Functions, Realtime } from 'appbase-web-sdk';
void [Account, TablesDB, Storage, Functions, Realtime];REST 示例
REST · Bash
# REST 可达性只能证明某个请求路径工作,不能代替完整能力验收。
curl -i 'https://<APPBASE_HOST>/v1/health/version'常见错误
| 现象 | 处理建议 |
|---|---|
| 只看到路由或类型定义 | 继续查找 Action 回调、认证元数据、SDK/Console 接入和测试证据。 |
| 页面称 PARTIAL 但目标环境不可用 | PARTIAL 表示有明确边界,不保证所有实例默认启用。 |
| 把 404 当作资源一定不存在 | 安全查询可能把不可见资源归一化为 not found。 |
当前限制
- NOT_EXPOSED:CLI、Schema repair、存储模式/转换、服务节点扩缩容、MySQL/OceanBase 适配、平台 Migration 控制面、Sites 自定义域名 CRUD。
- NOT_SUPPORTED:SQL Proxy/MySQL 直连、模型训练与托管、统一 Agent Runtime、GraphQL Subscription。
- 内部实现、运维 Runbook 与 Credential 不属于公开产品表面。
Appwrite 兼容说明
Appwrite Docs 只提供分类参考;本矩阵不会把上游分类自动继承为 AppBase 能力。
AppBase 增强说明
AppBase 增强项在独立页面说明其 API、Console、权限与失败语义;PARTIAL 页面明确写出“当前没有”或“依赖部署”的边界。
发布状态和验证 Commit
origin/main 条件支持。验证 Commit:0363062a1c7ea08741975bb5ba0c3361663c9353;使用前必须同时满足本页“当前限制”。
权威来源文件列表
backend-candidate:app/controllers/api/messaging.phpbackend-candidate:app/controllers/shared/api/rate-limit.phpbackend-candidate:app/realtime.phpbackend-candidate:packages/sdks/client-*backend-candidate:packages/sdks/server-*backend-candidate:src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Schema/CreateVersion.phpbackend-candidate:src/Appwrite/Platform/Modules/Databases/Schema/SchemaDiffer.phpbackend-candidate:src/Appwrite/Platform/Modules/Databases/Schema/SchemaVersionService.phpbackend-candidate:src/Appwrite/Platform/Modules/Sites/Http/Sites/backend-candidate:tests/e2e/General/HTTPTest.phpbackend-candidate:tests/e2e/Services/Messaging/MessagingBase.phpbackend-candidate:tests/e2e/Services/RateLimitTest.phpbackend-candidate:tests/e2e/Services/Sites/SitesCustomServerTest.phpbackend-candidate:tests/e2e/Services/TablesDB/TablesDBSchemaVersioningTest.phpbackend-candidate:tests/unit/SDK/frontend-candidate:console/src/lib/components/sidebar.sveltefrontend-candidate:console/src/routes/(console)/project-[region]-[project]/sites/frontend-candidate:packages/sdks/console-web/src/services/messaging.tsnegative-evidence:未发现 first-class retry HTTP actionnegative-evidence:未发现独立的只读 compare 或 preview HTTP APIorigin-main:DEPLOY-k8s.mdorigin-main:deploy/appwrite-helm/Chart.yamlorigin-main:deploy/appwrite-helm/values.yamlorigin-main:docker-compose.ymlorigin-main:docs/products/v2.3.x/sdks/
Appwrite taxonomy 仅作信息架构参考:https://appwrite.io/docs/advanced/network、https://appwrite.io/docs/advanced/self-hosting、https://appwrite.io/docs/products/databases、https://appwrite.io/docs/products/messaging、https://appwrite.io/docs/products/sites、https://appwrite.io/docs/sdks。上游页面不是 AppBase 实现证据。