feat: support S3 media processing pipeline
This commit is contained in:
@@ -348,7 +348,7 @@
|
||||
- ✅ MinIO S3 Provider 配置可用(`config.prod.toml`)
|
||||
- ✅ 上传/访问/删除完整链路验证通过
|
||||
|
||||
### 17) 媒体处理管线适配对象存储(S3/MinIO)
|
||||
### 17) 媒体处理管线适配对象存储(S3/MinIO)(已完成)
|
||||
**需求目标**
|
||||
- 在对象存储模式下,媒体处理任务可完整执行并回传产物。
|
||||
|
||||
@@ -356,10 +356,14 @@
|
||||
- Worker:从对象存储下载源文件到临时目录 → FFmpeg 处理 → 结果上传回对象存储 → 清理临时文件。
|
||||
- 产物:封面/预览片段自动生成并回写 `media_assets`。
|
||||
- 本地 FS 仍保留兼容路径(开发/测试使用)。
|
||||
- 进度:本地视频处理已可生成封面资产(ffmpeg 可用时)。
|
||||
- 已完成:
|
||||
- `Storage.Download` 支持 local copy + S3 FGetObject
|
||||
- `MediaProcessWorker` 支持对象存储流程(下载 → FFmpeg → 上传封面 → 清理)
|
||||
- 封面派生资产在 S3 模式走 `PutObject`(不再 rename)
|
||||
|
||||
**测试方案**
|
||||
- 对象存储模式下上传视频触发处理,封面/预览可访问;任务异常可重试。
|
||||
- ✅ `ENV_LOCAL=test go test ./backend/app/jobs -run Test_MediaProcessWorkerLocal -count=1`
|
||||
- ✅ `ENV_LOCAL=minio go test ./backend/app/jobs -run Test_MediaProcessWorkerS3 -count=1`
|
||||
|
||||
### 18) 支付集成
|
||||
**需求目标**
|
||||
@@ -393,6 +397,7 @@
|
||||
- 性能优化(避免 N+1:订单/租户列表批量聚合 + topics 聚合)。
|
||||
- 多租户强隔离(/t/:tenantCode/v1 + TenantResolver)。
|
||||
- 真实存储 Provider 接入(生产 MinIO S3 配置与 E2E 验证)。
|
||||
- 媒体处理管线适配对象存储(S3/MinIO)。
|
||||
|
||||
## 里程碑建议
|
||||
- M1:完成 P0
|
||||
|
||||
Reference in New Issue
Block a user