为了使开发者能够在云点播中实现资源隔离,云点播提供了子应用特性。子应用是云点播的一个内部概念,是一种资源划分的方式,一个子应用的外在表现类似于一个独立的云点播账号。在创建子应用后,点播资源的归属形式如下图所示:
说明:本文所说的资源包括云点播中的媒体文件及其属性、由媒体文件衍生的其它文件、各类配置、CDN 域名、使用点播服务产生的统计信息等。
云点播子应用的典型应用场景如下:
子应用体系中有三类身份:管理员、主应用和子应用,我们结合下图来说明它们的定义。
说明:如无特殊说明,下文不再区分主应用和子应用,统一用子应用来表述。
云点播子应用体系提供以下能力:
云点播子应用体系具有以下限制:
说明:如果已开通子应用功能,则左侧导航栏的【开通子应用】将不可见。
开通子应用功能后,云点播控制台 的左上角会出现一个身份选择下拉框,开发者可以在这里选择身份。如果开发者刚开通子应用功能,则下拉框内只有两个选项:【管理员】和【主应用】;如果开发者新创建子应用后,下拉框会新增对应的身份选项。
在管理员身份下,左侧导航栏包括【服务概览】、【应用管理】、【短视频 License】。
在子应用身份下,云点播控制台的使用方法和未开通子应用功能时几乎完全一致,用户可以查看和操作归属于该子应用的点播资源。两者的主要区别在于子应用没有自己的计费配置。
在开通云点播子应用功能后,开发者在使用云点播服务端 API 时需要指定访问的是哪个子应用的资源。
云点播服务端 API 已经升级为 云 API 3.0 版本,用户可以在各个 API 的SubAppId
参数中指定所要访问的子应用。如果要访问的是主应用,既可以填写主应用的标识符,也可以不填。
服务端 API 2017也支持子应用,使用时需要在请求中增加一个SubAppId
参数(注意大小写),该参数与服务端 API 2017 的 公共请求参数 平级,其值为子应用 ID。如果要访问的是主应用,既可以填写主应用的标识符,也可以不填。
说明:
- 服务端 API 2017 的文档并未暴露
SubAppId
参数,但不影响使用该参数。SubAppId
参数也要参与服务端 API 的签名计算,计算规则不变。
在开通云点播子应用功能后,开发者在上传媒体文件到云点播时需要指定上传到哪个子应用下。
直播录制 支持录制到指定的子应用,指定方法为在直播推流参数中增加vod_sub_app_id=xxx
(xxx
指子应用 ID)。如果要录制到主应用,不带该参数即可。
服务端上传 支持上传到指定的子应用,具体的参数填写方法见下方链接。如果要上传到主应用,既可以填写主应用的标识符,也可以不填。
使用 API 方式进行上传时涉及到 ApplyUpload 和 CommitUpload 两个接口,具体用法请参见 在服务端 API 中指定子应用。
我们强烈建议使用 SDK 来进行上传。
客户端上传 支持上传到指定的子应用,指定方法为在 客户端上传签名 中增加一个参数:vodSubAppId=xxx
(xxx
指子应用 ID)。如果要上传到主应用,既可以填写主应用的标识符,也可以不填。
说明:
vodSubAppId
参数也要参与客户端上传签名计算,计算规则不变。
URL 拉取视频上传支持上传到指定的子应用。
云点播已接入访问管理 CAM,支持子应用维度的授权,详情请参见 访问管理。
不影响。子应用体系在设计时考虑了兼容性,所有的服务端 API 接口在不指定子应用 ID 时,默认为操作主应用。
子应用功能本身是免费的,但每个子应用所产生的消耗都将计入该云点播账号,并按云点播 计费逻辑 进行计费。
如上文 限制 的说明,云点播只为整个账号出一份汇总的账单。如果开发者内部多个业务需要进行成本分摊,那么可以基于云点播提供的子应用维度的统计数据,自行定义并计算内部成本分摊。
开发者的云点播服务发生欠费停服时,该账号下所有的子应用都会被停服。
子应用之间的资源是隔离的,无法迁移。
本页内容是否解决了您的问题?