Java 后端在生成式服务中的主要工作可以分为以下几个部分:
GraphQL 接口层:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| servicenameSimplify( privateUserId: ID!, metadata: SimpleXXXContentMetadata! ): Content!
public class ContentMutationResolver { public Content videoLipSyncSimplify( String privateUserId, SimpleAudio2VideoContentMetadata metadata ) { } }
|
内容元数据管理:
1 2 3 4 5 6 7 8 9 10 11 12
| public class StablePawXXXContentMetadata { private Integer frameRate; private Integer duration; private String inputPath; private String outputPath; protected File srcImageFile; protected File srcAudioFile; }
|
工作流解析器:
1 2 3 4 5 6 7 8 9 10 11
| public class XXXWorkflowParser extends BasicWorkflowParser { public void init() { } public void setSourceMedia(String path) { } }
|
任务执行器:
1 2 3 4 5 6 7 8
| @Component public class StablePawXXXExecutor { public void execute(String contentId, String modelId, String contentMetadataUrl) { } }
|
回调处理:
1 2 3 4 5 6 7 8 9 10
| @RestController public class ContentGenerationCallbackController { @PostMapping("/callback/content/event") public void handleCallback(ContentGenerationCallback callback) { } }
|
创建上下文:
1 2 3 4 5 6 7 8 9 10 11 12
| public class XXXCreationContext { public int costAmount() { return calculateCreditCost(); } public void init(User user, Model model, Metadata metadata) { } }
|
创建处理器:
1 2 3 4 5 6 7 8 9 10
| public class XXXCreationHandler { public void handle() { } }
|
核心职责:
- 提供 GraphQL API 接口
- 管理用户认证和授权
- 处理元数据生成和存储
- 协调任务执行流程
- 处理服务回调响应
- 管理内容生成生命周期
- 实现业务逻辑和规则
数据存储:
- MySQL 存储基础数据
- DynamoDB 存储服务元数据
- Redis 缓存处理结果
异常处理:
- 任务执行异常处理
- 回调失败处理
- 资源清理机制
- 日志记录和监控
与其他组件的交互:
- 调用 Python 服务进行内容生成
- 使用 S3 存储生成的文件
- 通过 SQS 接收状态回调
- 访问 DynamoDB 存储元数据