应用工程冷启动安全架构
提示词主题

文本 · 通用对话模型

冷启动安全的 Expo 与 Supabase AI 生成架构

帮助设计一套不阻塞应用启动的 Expo + Supabase 异步生成架构,涵盖数据库迁移、鉴权与额度校验、任务入队、Realtime 或轮询状态同步,以及独立 Worker 的生成、存储、重试和幂等流程。

Prompt

请担任高级 Expo + Supabase 架构师。

使用以下技术实现一个“冷启动安全”的架构:
- Expo(React Native)客户端
- Supabase Postgres + Storage + Realtime
- Supabase Edge Functions 仅用于轻量级门控 + 任务入队
- 独立的 Worker 服务负责繁重的 AI 生成和存储写入

交付内容:
1) 数据库架构(SQL 迁移),包括:jobs、generations、entitlements(credits/is_paid),以及索引和 RLS 说明
2) Edge Functions:
   - ping(HEAD/GET)
   - enqueue_generation(验证身份、检查 is_paid/credits、创建任务、返回 jobId)
   - get_job_status(轻量读取)
   保持导入最少;不要使用重量级 SDK。
3) Expo 客户端流程:
   - 应用启动时执行非阻塞的预热 ping
   - Generate 按钮使用乐观 UI + 占位符
   - 通过 Realtime 订阅任务更新,或实现轮询回退方案
   - 最终生成结果在画廊列表中替换占位符
4) Worker 职责(描述接口和最少的端点/逻辑,不要过度构建):
   - 获取排队中的任务
   - 执行 AI 生成
   - 上传到存储
   - 更新 jobs + 插入 generations
   - 重试策略和幂等性

约束:
- 不要让任何 Edge 调用阻塞应用启动
- 不要在 Edge Functions 中执行 AI 调用
- 确保失败的任务仍会创建一条 generation 记录,并且原始输入可见
- 保持方案适合生产环境,但尽量精简

输出必须按以下结构组织:
A) 架构摘要
B) 迁移(SQL)
C) Edge function 文件结构 + 关键代码块
D) Expo 集成说明 + 关键代码块
E) Worker 概要 + 伪代码

使用建议

使用建议:将你的生成类型、额度规则、身份认证方式和 Worker 部署环境补充到提示中,并要求模型分别输出可执行的 SQL、函数代码、客户端关键代码与 Worker 伪代码;上线前逐项审查 RLS、权限校验、幂等键和失败任务记录逻辑。

信息

类型
文本
模型
通用对话模型
来源
Ted2xmen
许可
CC0-1.0

反馈这条内容