Skip to content

批量渲染

批量渲染适用于模板化视频生产、批量转码、多版本内容生成等需要同时处理多个任务的业务场景。美摄云剪平台通过独立的任务调度服务(Task Scheduler),统一接收、管理并分发合成与转码任务;部署规模可从单机逐步扩展到多 Worker 集群,在业务增长过程中持续增加可用的渲染资源。

平台提供 CPU 和 GPU 两类合成(compile)与转码(transcode)服务。客户可根据任务规模、素材规格、目标编码格式和现有基础设施选择合适的部署方式,无需一开始就建设大规模集群。

工作方式

批量提交的合成、转码请求会统一进入任务队列,由 Task Scheduler 集中管理并分发给可用的服务实例。每个实例负责执行具体任务,并通过共享存储读取素材、写入渲染产物。

这一架构将任务接入、调度和实际渲染解耦,具有以下优势:

  • 统一管理任务:合成与转码请求通过同一套队列管理,便于承接持续到达的批量任务。
  • 支持并行执行:一台服务器可运行多个服务实例,在资源允许的情况下同时处理多个任务。
  • 便于扩展算力:业务量增长后,可增加 Worker 服务器或服务实例,不必改变上层任务提交方式。
  • 灵活选择计算资源:compile、transcode 均提供 CPU 和 GPU 版本,可结合成本、编码格式和交付时效进行选择。

批量任务的实际处理效率与时间线复杂度、输入与输出分辨率、编码格式、码率、单机资源以及并发配置有关。建议使用真实业务样例完成容量测试后,再确定生产环境配置。

部署方案

方案一:单机部署

Task Scheduler 与一个或多个合成、转码服务实例可部署在同一台服务器上。根据服务器资源,可使用 CPU 版服务,也可配置 GPU 版服务。

方案优势

  • 部署结构简单,所需服务器数量少,便于快速落地。
  • 可在单机内启动多个服务实例,实现多任务并行处理。
  • 适合任务量较小、并发需求相对稳定,或处于验证和初期上线阶段的业务。

随着任务量提升,单机部署可进一步扩展为单机多 GPU 或多 Worker 集群,无需改变任务接入流程。

方案二:单机多 GPU

一台服务器可安装多张 NVIDIA GPU,并启动多个 GPU 版 compile 或 transcode 服务实例。不同实例分别使用不同显卡,使多个任务能够并行利用独立的 GPU 资源。

方案优势

  • 在不增加服务器节点的情况下扩展单机渲染能力,提高服务器内 GPU 资源的利用率。
  • 可按显卡数量配置服务实例,将不同任务分配到不同 GPU 执行。
  • 适合机房空间、服务器数量受限,但希望集中提供较高并发处理能力的场景。

GPU 选型不能只参考显存容量或产品系列。部署前应查阅 NVIDIA 官方 Video Encode and Decode GPU Support Matrix,核对目标显卡支持的编码格式、NVENC/NVDEC 引擎数量及并发会话限制,并结合真实素材进行压力测试。

方案三:主控 + 多 Worker 集群

在分布式部署中,主控节点部署任务调度服务(Task Scheduler)等主控组件,多个 Worker 服务器运行 compile、transcode 服务实例并执行任务。Task Scheduler 负责队列管理与任务分发;需要扩展处理能力时,可增加 Worker 节点,形成跨服务器的横向扩展。

方案优势

  • 多台服务器共同处理任务,适合持续增长或具有明显批量峰值的业务。
  • Worker 可根据实际配置选用 CPU 或 GPU 版本,便于组合现有计算资源。
  • 扩容主要发生在执行层,上层业务仍通过统一入口提交和查询任务。
  • 单台 Worker 可配置多张 GPU,组合“多 Worker + 多 GPU”拓扑,进一步扩展可用算力。

多 Worker 场景需要确保各节点能够访问相同的素材和渲染产物。平台支持使用 NFS 共享存储或对象存储,使任务可在不同 Worker 节点执行,而不依赖某一台服务器的本地文件。

方案四:Kubernetes 集群部署

平台支持在客户自有 Kubernetes(K8s)集群中部署相关服务,由现有集群统一管理 Task Scheduler、compile 和 transcode 等容器实例。

方案优势

  • 可融入客户已有的容器平台、发布流程和运维体系。
  • 服务实例以容器方式管理,便于统一规划 CPU、GPU 与存储资源。
  • 适合已经建设 K8s 基础设施,希望将渲染服务纳入统一集群管理的客户。

K8s 负责容器和集群资源层面的调度,Task Scheduler 负责美摄合成、转码任务的队列管理与分发,两者分工不同并相互配合。实际部署时,需要由客户结合自身集群配置 GPU 资源、持久化存储和网络访问。

方案选择建议

业务情况建议方案主要价值
验证阶段、任务量较小或并发稳定单机部署架构简单,能够快速启用批量任务处理
希望在单台服务器内增加 GPU 并发能力单机多 GPU集中利用多张 GPU,减少额外节点需求
任务规模持续增长或需要跨服务器扩容主控 + 多 Worker通过增加 Worker 横向扩展渲染资源
已有成熟的容器平台和集群运维体系K8s 集群部署将渲染服务纳入现有容器资源管理体系

以上方案可以逐步演进:从单机起步,在一台服务器内增加实例或 GPU;当单机资源无法满足业务规模时,再增加 Worker 节点;已有 K8s 平台的客户也可直接采用集群部署。这样的部署路径能够让渲染资源随业务规模增长,减少前期一次性投入过多资源的压力。

规划批量渲染环境

在确定生产方案前,建议重点评估以下因素:

  1. 任务特征:统计高峰期任务量、单个视频时长、时间线复杂度和可接受的完成时间。
  2. 编解码要求:确认输入、输出编码格式与分辨率,并核对所选 GPU 的硬件编解码支持能力。
  3. 实例与显卡对应关系:单机多 GPU 时,为各 GPU 版服务实例明确指定使用的显卡,避免资源配置重叠。
  4. 共享存储:多 Worker 部署时,提前规划 NFS 或对象存储的路径、访问权限和网络带宽。
  5. 容量验证:使用具有代表性的真实时间线和素材测试 CPU、GPU、实例数量与并发配置,确定符合业务目标的组合。

通过以上规划,可以在任务吞吐、单任务完成时间、硬件成本和运维复杂度之间取得更适合当前业务的平衡。