← 返回提示詞庫
創意靈感 難度:入門

Expo与Supabase性能分析

Expo + Supabase Edge Function Cold Start & Mobile Performance Analysis

作为高级移动性能工程师,对Expo和Supabase边缘函数进行生产级深度分析,关注冷启动和移动性能。

適用平台: ChatGPTClaudeGemini
担任高级移动性能工程师和 Supabase Edge Functions 架构师。

你的任务是对这个代码库进行深入的、生产级别的分析,严格关注以下方面:

- Expo (React Native) 移动应用行为
- Supabase Edge Functions 使用情况
- 冷启动延迟
- 移动端感知性能
- 针对移动环境的网络 + 运行时效率低下问题

这不是一个重构任务。
这是一个分析 + 诊断任务。
除非明确要求,否则不要编写代码。
不要提出通用的最佳实践——所有结论都必须基于这个代码库。

---

## 1. 背景与假设

假设:
- 应用使用 Expo 构建(托管或裸机)
- 目标平台是 iOS 和 Android
- Supabase Edge Functions 用于后端逻辑
- 用户可能处于不稳定或缓慢的移动网络中
- 应用冷启动 + Edge 冷启动可能叠加

Edge Functions 在 Deno 上运行,并且是无服务器的。

---

## 2. 分析目标

你必须识别并记录:

### A. Edge Function 冷启动风险
- 哪些 Edge Functions 可能遭受冷启动
- 原因(包大小、导入、运行时行为)
- 它们是否在关键用户体验时刻(应用启动、会话恢复、导航)被调用

### B. 移动用户体验影响
- 冷启动在哪些地方直接对用户可见
- 哪些屏幕或流程会因 Edge 响应而阻塞 UI
- 是否使用了乐观 UI 或后台执行

### C. 导入与运行时开销
对于每个 Edge Function:
- 导入的库
- 导入是即时加载还是延迟加载
- 全局作用域副作用
- 估计的冷启动成本(低 / 中 / 高)

### D. 架构错位
识别对于移动应用来说不应该放在 Edge Functions 中的逻辑,例如:
- 繁重的 AI 调用
- 外部 API 编排
- 长时间运行的任务
- 流式响应

解释为什么每个案例对移动用户来说都是有问题的。

---

## 3. EDGE FUNCTION 分类

对于每个 Edge Function,将其归类为以下角色之一:

- 认证 / 守卫
- 验证 / 策略
- 编排
- 繁重计算
- 外部 API 代理
- 后台作业触发器

然后回答:
- Edge 是这个角色的正确运行时吗?
- 它应该是 Edge、Server 还是 Worker?

---

## 4. 移动端特定流程分析

端到端追踪以下流程:

- 应用冷启动 → 第一次 Edge 调用
- 会话恢复 → Edge 验证
- 用户触发操作 → Edge 请求
- 后台 → 前台恢复

对于每个流程:
- 识别阻塞调用
- 识别冷启动叠加风险
- 识别不必要的同步等待

---

## 5. 性能与延迟预算

估算(定性而非定量):

- 每个 Edge Function 的冷启动影响
- 热启动行为
- 移动端最差感知延迟

使用以下类别:
- 不可见
- 可感知
- 破坏用户体验

---

## 6. 发现结果格式(强制)

以以下结构输出你的发现:

### 🔴 关键问题
直接损害移动用户体验的问题。

### 🟠 中度风险
扩展性差或影响留存的问题。

### 🟢 可接受 / 精心设计区域
值得保留的良好架构决策。

---

## 7. 建议(严格规则)

- 建议必须针对此代码库
- 每条建议必须包含:
  - 更改内容
  - 原因(移动端 + Edge 推理)
  - 预期影响(用户体验、延迟、可靠性)

不要:
- 重写代码
- 引入新框架
- 过早过度优化

---

## 8. 最终结论

明确回答:
- 这个架构适合移动端吗?
- Edge 是过度使用、使用不足还是正确使用?
- 单一最高影响的改进是什么?

---

## 重要规则

- 保持批判性和有主见
- 假设此应用旨在实现生产质量的用户体验
- 将冷启动延迟视为首要问题
- 优先考虑移动端感知而非后端优雅