概览
约 568 字大约 2 分钟
2025-08-11
系统架构
Evoliant 的后端基于 Supabase 构建,采用现代化的 BaaS(Backend as a Service)架构,主要包含以下组件:
核心组件
- 数据库系统:PostgreSQL 17 数据库,支持高性能查询和数据持久化
- 边缘函数:Deno 运行时的无服务器函数,处理自定义业务逻辑
- 认证服务:内置的用户认证和授权系统
- 存储服务:文件存储和管理服务
- 实时功能:WebSocket 连接支持实时数据同步
项目结构
supabase/
├── config.toml # Supabase 项目配置
├── package.json # Node.js 依赖管理
├── functions/ # 边缘函数目录
└── migrations/ # 数据库迁移文件技术栈
运行时环境
- Deno 2.4.3:现代 JavaScript/TypeScript 运行时
- Supabase CLI 2.33.9:本地开发和部署工具
数据库
- PostgreSQL 17:主数据库系统
- 行级安全策略(RLS):数据访问控制
- 触发器和函数:自动化数据处理
边缘函数特性
- TypeScript 支持:完整的类型安全
- 模块化架构:可复用的工具函数
- CORS 处理:跨域请求支持
- 统一错误处理:标准化的响应格式
服务端点
本地开发环境
- API 服务:http://127.0.0.1:54321
- 数据库连接:端口 54322
- 管理界面:http://127.0.0.1:54323
- 邮件测试:端口 54324
边缘函数端点
POST /auth-login- 用户登录POST /auth-register- 用户注册
安全特性
认证系统
- JWT Token 认证
- 刷新 Token 轮换
- 邮箱格式验证
- 密码强度验证
数据安全
- 行级安全策略(RLS)
- 角色权限控制
- 敏感数据加密
- SQL 注入防护
API 安全
- CORS 跨域保护
- 请求速率限制
- 统一错误处理
- 输入数据验证
开发工具
本地开发
# 启动完整开发环境
cd supabase && npx supabase start
# 查看服务状态
npx supabase status
# 重置数据库
npx supabase db reset数据库管理
# 创建新迁移
npx supabase migration new <migration_name>
# 应用迁移
npx supabase db push
# 生成类型定义
npx supabase gen types typescript --local监控与日志
- 实时日志:边缘函数执行日志
- 性能指标:API 响应时间和成功率
- 错误追踪:详细的错误堆栈信息
- 资源监控:数据库连接和存储使用情况
版权所有
版权归属:Evoliant
许可证:MIT