1. 用途和受众
1.1 预期用途
- 指导华为云上无服务器游戏截图审核与分发流水线的设计和开发。
- 为售前、解决方案设计、实施和审查提供可重用的架构模式。
- 作为解决方案手册、交付包或实际部署的架构基础。
- 定义安全性、可靠性、性能、成本、运营和合规性护栏。
1.2 目标受众
- 华为云 FunctionGraph 用户和无服务器应用开发者;
- 游戏工作室的后端技术团队和玩家社区运营人员;
- 需要为多人在线游戏构建截图自动上传→审核→处理→分发全流水线的服务端架构师;
- 关注玩家生成内容(UGC)安全合规、希望利用 AI 自动审核在存储前拦截违规图片的平台治理人员;
- 需要通过 CDN 全球加速分发玩家截图、结合元数据关联实现截图画廊快速检索的游戏客户端和社区网站开发团队。
2. 参考架构概述
2.1 架构描述
这是一个无服务器图片处理流水线系统,用于接收用户上传的截图,自动进行内容审核、图片转换和水印处理,最终通过 CDN 分发处理后的图片。系统采用事件驱动架构,全程无服务器管理,按需弹性伸缩。典型应用场景为游戏平台中玩家截图分享——玩家上传的截图需要经过不当内容检测、尺寸调整和水印添加后,才能展示在游戏社区,整个流程自动完成,无需人工干预。
2.2 业务背景
| 项目 |
描述 |
| 业务问题 |
游戏平台玩家截图分享场景中,需对上传图片进行不当内容审核、格式转换和水印处理,传统自建服务器方案需手动扩容、人工审核、分发慢 |
| 期望的结果 |
玩家上传截图后自动完成内容审核、图片处理和 CDN 分发,毫秒级 AI 检测,全程无服务器管理,按需付费 |
| 主要用户 |
游戏玩家、游戏社区网站用户、游戏运营团队 |
| 关键制约因素 |
图片处理延迟要求、AI 内容审核准确率、CDN 分发覆盖范围、无服务器函数执行时长限制 |
| 成功指标 |
内容审核响应 < 1 秒、图片处理延迟 < 5 秒、系统可用性 > 99.9%、按需付费无闲置成本 |
2.3 架构优点
| 优点 |
描述 |
| 全无服务器架构 |
所有计算使用 FunctionGraph,无需管理服务器,按需付费,自动弹性伸缩 |
| AI 内容安全 |
通过 ModelArts 自动检测不当内容,避免人工审核成本,毫秒级响应 |
| 事件驱动通知 |
使用 EG 异步通知审核结果,解耦主流程,提升响应速度 |
| CDN 全球加速 |
处理后的图片通过 CDN 分发,确保全球用户低延迟访问 |
| 缓存加速读取 |
DCS 缓存频繁读取的元数据,减轻数据库压力 |
2.4 设计关注点
| 效益 |
架构如何实现它 |
测量 |
| 安全与合规 |
IAM 统一身份认证验证用户请求合法性;ModelArts AI 自动审核不当内容 |
未授权请求拦截率 100%、不当内容检出率 > 99% |
| 可靠性和弹性 |
无服务器自动伸缩,事件驱动解耦各组件;OBS 提供高可靠对象存储 |
系统可用性 > 99.9%、MTTR < 5 分钟 |
| 性能和可扩展性 |
FunctionGraph 按需弹性伸缩;DCS 缓存加速频繁读取;CDN 全球加速分发 |
图片处理延迟 < 5 秒、CDN 命中率 > 95% |
| 成本效益 |
全无服务器按需计费,无闲置资源;仅在请求时触发计算 |
按实际处理量计费、无固定基础设施成本 |
| 卓越运营 |
CES 云监控系统运行指标;AOM 全链路运维管理 |
运维人工干预 < 5%、告警响应 < 1 分钟 |
| 交付敏捷性 |
FunctionGraph 事件驱动编排;IaC 部署;无服务器无需管理基础设施 |
部署时间 < 30 分钟、迭代周期以天计 |
2.5 典型架构
典型架构图
架构采用 7 层布局:
| 层级 |
颜色 |
包含服务 |
| 外部系统 |
橙色 |
游戏客户端、社区网站、玩家 |
| 接入层 |
蓝色 |
CDN、APIG、IAM |
| 计算层 |
蓝色 |
FunctionGraph(预处理/图片处理/检索) |
| AI 内容审核层 |
紫色 |
ModelArts |
| 数据层 |
蓝色 |
OBS(原始/处理后)、GeminiDB、DCS |
| 消息通知层 |
蓝色 |
EG |
| 公共服务 |
黄色 |
IAM、CES、AOM |
2.6 流程描述
| 步骤 |
数据流向 |
说明 |
| ① |
玩家 → APIG |
玩家在游戏内截图,调用 API 上传截图 |
| ② |
APIG → IAM |
API 网关接收 REST API 请求,IAM 认证用户身份 |
| ③ |
APIG → FunctionGraph |
认证通过后,触发 FunctionGraph 预处理函数 |
| ④ |
FunctionGraph → ModelArts |
预处理函数将图片发送至 ModelArts 进行内容审核 |
| ⑤ |
FunctionGraph → OBS |
原始图片存入 OBS 对象存储 |
| ⑥ |
ModelArts → EG |
审核结果通过事件网格通知用户 |
| ⑦ |
FunctionGraph → OBS |
图片处理函数执行转换/加水印,上传至 OBS |
| ⑧ |
FunctionGraph → GeminiDB |
图片元数据(玩家ID、时间戳、位置)存入 GeminiDB |
| ⑨ |
EG → 玩家 |
审核结果通知发送给玩家 |
| ⑩ |
客户端 → APIG |
客户端/社区网站通过 API 网关发起检索请求 |
| ⑪ |
FunctionGraph → GeminiDB |
检索函数从 GeminiDB 获取数据,DCS 缓存加速 |
| ⑫ |
CDN → 客户端 |
CDN 分发 OBS 中的处理后截图给客户端 |
2.7 云服务产品清单
| 分类 |
服务或产品 |
推荐配置 |
| 接入 |
CDN 内容分发网络 |
全球加速节点,缓存处理后图片 |
| 接入 |
APIG API 网关 |
托管 REST API,处理上传和检索请求 |
| 接入 |
IAM 身份认证服务 |
验证用户请求合法性 |
| 计算 |
FunctionGraph 函数工作流 |
3 个函数实例:预处理、图片处理、检索 |
| AI 内容审核 |
ModelArts AI 开发平台 |
内容审核模型部署与推理调用 |
| 数据 |
OBS 对象存储 |
原始图片桶 + 处理后图片桶 |
| 数据 |
GeminiDB 云数据库 |
NoSQL,存储图片元数据 |
| 数据 |
DCS 分布式缓存 |
加速频繁读取的元数据 |
| 消息通知 |
EG 事件网格 |
异步通知审核结果 |
| 运营 |
CES 云监控服务 |
监控系统运行指标 |
| 运营 |
AOM 应用运维管理 |
全链路运维能力 |
3. 参考链接
- 产品文档:
- 实施指南:
- 源代码或 IaC:
- 操作手册:
- 安全性和合规性映射:
4. 使用限制
- 无服务器函数(FunctionGraph)执行时长存在上限,超大图片处理可能需要分片或异步处理策略。
- AI 内容审核准确率依赖模型训练质量,需定期评估和更新审核模型。
- CDN 缓存策略需根据图片更新频率合理配置,避免缓存过期导致用户看到旧版本图片。
- GeminiDB 存储容量需根据图片元数据增长趋势规划,避免超出配额。
附录 A. 术语和缩略语
| 术语 |
定义 |
| CDN |
内容分发网络(Content Delivery Network),加速图片全球分发 |
| APIG |
API 网关(API Gateway),托管 REST API |
| IAM |
身份认证服务(Identity and Access Management) |
| FunctionGraph |
函数工作流,华为云无服务器计算服务 |
| ModelArts |
AI 开发平台,华为云机器学习与 AI 模型管理服务 |
| OBS |
对象存储服务(Object Storage Service) |
| GeminiDB |
华为云 NoSQL 云数据库,存储图片元数据 |
| DCS |
分布式缓存服务(Distributed Cache Service),加速读取 |
| EG |
事件网格(EventGrid),异步事件通知 |
| CES |
云监控服务(Cloud Eye Service) |
| AOM |
应用运维管理(Application Operations Management) |
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
评论(0)