环境管理
购买平台版套餐后,即可调用云开发接口创建环境。本文介绍平台版环境的生命周期、环境管理接口,以及两种使用方式:按需创建(用户使用时实时创建)与预创建(提前批量创建,用户使用时直接分配)。
职责边界:云开发仅负责创建资源,不感知您的用户体系。用户与环境 ID 的对应关系,需要由您的系统在创建成功后自行记录并维护。
环境生命周期
注意:平台版为账号维度计费,不支持为单个环境单独续费。套餐状态影响账号下所有环境:套餐超限停服(资源点耗尽)或套餐到期隔离(到期未续费)时,所有环境均不可使用(环境数据保留)。套餐状态的完整说明,见购买与初始化 - 套餐状态。
环境从创建到删除会经历多个状态。平台版环境的状态如下:
| 状态 | 说明 |
|---|---|
| 创建中 | 环境正在创建,资源尚未就绪,暂不可用 |
| 正常 | 环境已就绪,可正常使用 |
| 创建失败 | 环境创建失败,不可用 |
| 暂停中 | 环境已暂停,服务不可用,数据保留 |
| 已删除 | 环境已删除,环境内数据已清除 |
状态流转如下:
流转说明:
- 创建中 → 正常:创建成功,环境就绪,可投入使用
- 创建中 → 创建失败:创建失败,环境不可用
- 正常 → 暂停中:手动暂停环境,服务停止但数据保留
- 暂停中 → 正常:手动启动,环境恢复可用
- 正常 → 已删除:删除环境,环境内数据被清除
- 暂停中 → 已删除:删除已暂停的环境,环境内数据被清除
- 创建失败 → 已删除:创建失败的环境也可删除,清理无效资源
环境的创建、查询、暂停/启动、删除等接口操作,见接口管理。
接口管理
平台版环境管理通过以下接口完成,点击接口名可查看接口文档。各接口的请求参数与返回值以接口文档为准,本文不再重复列出:
| 操作 | 接口 | 说明 |
|---|---|---|
| 查询平台版资源信息 | DescribePlatforms | 查询账号下的平台版资源,获取 PlatformId |
| 创建环境 | CreatePlatformEnv | 创建平台版套餐环境,创建成功后返回环境 ID(EnvId) |
| 获取环境列表 | DescribeEnvs | 查询环境列表与状态,环境处于「正常」状态即已就绪 |
| 暂停 / 启用环境 | ModifyPlatformEnv | 修改平台版环境信息,可暂停与启用环境 |
| 销毁环境 | DestroyPlatformEnv | 删除平台版环境,环境内数据同时清除且不可恢复 |
说明:平台版为账号维度套餐,创建环境时无需指定
PackageId(套餐在账号维度统一管理);环境状态的完整说明,见环境生命周期。
获取密钥:使用具备云开发管理权限的 CAM 子用户登录 访问密钥控制台,创建并保存
SecretId与SecretKey,再将其分别配置为TENCENTCLOUD_SECRETID与TENCENTCLOUD_SECRETKEY环境变量。密钥仅应保存于平台服务端,不得提交到代码仓库或暴露到前端。其他语言(Python、Java、Go 等)的调用方式,请参阅云产品 SDK 中心。
使用方式
按需创建与预创建的流程如下。
按需创建
适用场景:用户规模较小或创建频率不高,环境随用随建,不提前占用资源。
流程示意:
用户请求环境时,您的系统实时调用 CreatePlatformEnv 创建环境;创建成功后,在您的系统数据库记录用户 ID 与环境 ID 的映射关系,并将环境 ID 返回给用户。创建完成后,调用 DescribeEnvs 确认环境状态(处于「正常」状态即已就绪),再分配给用户。
预创建
适用场景:对开通体验有要求(例如希望用户无感开通)。可提前批量创建好环境,用户使用时直接分配,创建耗时对用户不可见。
预创建流程:
- 批量创建:循环调用
CreatePlatformEnv批量创建环境(使用不同的环境别名区分环境),直到达到套餐限制或您的自定义限制 - 确认就绪:调用 DescribeEnvs 确认环境状态,将处于「正常」状态的环境纳入待分配环境池
用户申请流程:
- 分配:用户请求环境时,从环境池中随机选取一个已创建且未关联用户的环境分配给该用户,并在数据库中记录用户 ID 与环境 ID 的映射关系
- 签发凭证:为分配的环境获取 API Key 并下发给用户,见 API Key 管理
注意:预创建的环境会占用账号资源点并持续产生消耗,请根据预计用户量合理评估预创建数量,避免资源浪费。
下一步
环境创建完成后,接下来需要为每个用户环境签发 API Key: