
# 批量设置任务限速 - BatchSetSpeed
#### 功能介绍
批量设置任务限速，任务创建成功后默认不限速。
- 限速：自定义的最大迁移速度，迁移过程中的迁移速度将不会超过该速度。
- 不限速：对迁移速度不进行限制，通常会最大化使用源数据库的出口带宽。该流速模式同时会对源数据库造成读消耗，消耗取决于源数据库的出口带宽。比如：源数据库的出口带宽为100MB/s，假设高速模式使用了80%带宽，则迁移对源数据库将造成80MB/s的读操作IO消耗。
 
#### 调试
您可以在[API Explorer](https://apiexplorer.developer.huaweicloud.com/apiexplorer/doc?product=DRS&api=BatchSetSpeed)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 接口约束
- 限速可以通过设定时间段来定时控制迁移速度。目前默认设定为全天，您也可以根据业务场景自定义限速时间段。
- 自定义限速时间段支持最多设置10个，每个限速时段之间不能存在交叉的时间段，没有设定在限速时间段内的时间默认为不限速。
- 开始限速时间不能与结束时间相同。
- 开始时间为16:00且结束时间为15:59，为全天限速。
- speed_limit参数设置为\[\]为不限速。
- 开始时间忽略分钟，结束时间必须以59结尾例如03:59相当于4点（UTC时间），小时数为两位数字。
- 双主灾备时父任务不支持。
- 任务模式为**INCR_TRANS**时不支持。
 
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-drs/drs_api_0035.html)。
#### URI
PUT /v3/{project_id}/jobs/batch-limit-speed
表1路径参数 
| **参数**     | **是否必选** | **参数类型** | **描述**                                                                                                                                              |
|:---|:---|:---|:---|
| project_id | 是        | String   | 租户在某一Region下的Project ID。 获取方法请参见[获取项目ID](https://support.huaweicloud.com/api-drs/drs_api_0106.html)。 |
   
#### 请求参数
表2请求Header参数 
| **参数**       | **是否必选** | **参数类型** | **描述**                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|:---|
| Content-Type | 是        | String   | 指定类型为application/json。 缺省值：**application/json**                                                                                                                                                                                                                                                                                                                                                        |
| X-Auth-Token | 是        | String   | 从IAM服务获取的用户Token。                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| X-Language   | 否        | String   | 请求语言类型。 缺省值：**en-us** 取值： - **en-us**  - **zh-cn**   |
   
表3请求Body参数 
| **参数**       | **是否必选** | **参数类型**         | **描述**                                                                                                                   |
|:---|:---|:---|:---|
| speed_limits | 是        | Array of objects | 灾备限速设置信息。 详情请参见[表4]。 |
   
 表4speed_limits字段数据结构说明 
| **参数**      | **是否必选** | **参数类型**         | **描述**                                                                                                                  |
|:---|:---|:---|:---|
| job_id      | 是        | String           | 任务ID。                                                                                                                   |
| speed_limit | 是        | Array of objects | 限速信息请求体。 详情请参见[表5]。 |
   
 表5speed_limit字段数据结构说明 
| **参数** | **是否必选** | **参数类型** | **描述**                                                        |
|:---|:---|:---|:---|
| begin  | 是        | String   | 开始限速时间，此时间为UTC时间，开始时间为整时，如果有分钟，则会忽略，格式为hh:mm，小时数为两位，例如：01:00。 |
| end    | 是        | String   | 结束时间，此时间为UTC时间，输入必须为59分结尾，格式为hh:mm，例如：15:59。                  |
| speed  | 是        | String   | 限速，取值范围为1\~9999，单位为MB/s。                                      |
| is_utc | 否        | Boolean  | 是否为UTC时间。                                                     |
   
#### 响应参数
**状态码：200**
表6响应Body参数 
| **参数**  | **参数类型**         | **描述**                                                                                                                     |
|:---|:---|:---|
| count   | Integer          | 总数。                                                                                                                        |
| results | Array of objects | 批量修改任务返回列表。 详情请参见[表7]。 |
   
 表7results字段数据结构说明 
| **参数**     | **参数类型** | **描述**                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|
| id         | String   | 任务ID。                                                                                                                                                                                                                                                                                                                                 |
| status     | String   | 状态。取值： - **success**：成功。  - **failed**：失败。   |
| error_code | String   | 错误码。                                                                                                                                                                                                                                                                                                                                  |
| error_msg  | String   | 错误信息。                                                                                                                                                                                                                                                                                                                                 |
   
#### 请求示例
批量设置灾备任务限速，限速15MB/s，限速时间段为
```
https://{endpoint}/v3/054ba152d480d55b2f5dc0069e7ddef0/jobs/batch-limit-speed
{
  "speed_limits" : [ {
    "job_id" : "7d0504f1-aba3-435f-914f-936b861jb502",
    "speed_limit" : [ {
      "begin" : "16:00",
      "end" : "15:59",
      "speed" : "15"
    } ]
  } ]
}
```
#### 响应示例
**状态码：200**
OK
```
{
  "results" : [ {
    "id" : "efa2bd29-8780-494f-a2ee-188b003ejb11",
    "status" : "success"
  } ],
  "count" : 1
}
```
#### 状态码
| **状态码** | **描述**      |
|:---|:---|
| 200     | OK          |
| 400     | Bad Request |
   
其他状态请参见[状态码](https://support.huaweicloud.com/api-drs/drs_api_0108.html)。
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-drs/drs_05_0004.html)。
