Updating Max. Instances of a Function
Function
This API is used to update the maximum number of instances of a function.
URI
PUT /v2/{project_id}/fgs/functions/{function_urn}/config-max-instance
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| project_id | Yes | String | Project ID. For details, see Obtaining a Project ID. |
| function_urn | Yes | String | Function URN. For details, see the function model description. |
Request Parameters
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| X-Auth-Token | Yes | String | User token. It can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is the user token. |
| Content-Type | Yes | String | Message body type (format). |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| max_instance_num | No | Integer | Maximum number of instances. -1 indicates that the number of instances is unlimited, and 0 indicates that the function is disabled. |
Response Parameters
Status code: 200
| Parameter | Type | Description |
|---|---|---|
| func_urn | String | Function URN. |
| func_name | String | Function name. |
| domain_id | String | Domain ID. |
| namespace | String | Project ID. |
| project_name | String | Project name. |
| package | String | Group to which the function belongs. This field is defined to group functions. |
| runtime | String | Environment for executing a function. Options: Python2.7 Python 3.6 Python 3.9 Python 3.10 Go 1.x Java 8 Java 11 Node.js 6.10 Node.js 8.10 Node.js 10.16 Node.js 12.13 Node.js 14.18 Node.js 16.17 Node.js 18.15 C# (.NET Core 2.1) C# (.NET Core 3.1) Custom PHP 7.3 HTTP Custom image-based functions Cangjie1.0 Enumeration values:
|
| timeout | Integer | Maximum duration the function can be executed. Value range: 3s–259,200s. |
| handler | String | Handler of a function in the format of "xx.xx". Max. 60 of letters. It must contain a period (.). For example, for Node.js function myfunction.handler, the file name is myfunction.js, and the handler function is handler. Minimum length: 3 character. Maximum length: 128 characters. |
| memory_size | Integer | Memory consumed by a function. Unit: MB. The value can be 128, 256, 512, 768, 1024, 1280, 1536, 1792, 2048, 2560, 3072, 3584 or 4096. The value ranges from 128 to 4096. |
| cpu | Integer | CPU resources of a function. Unit: millicore (1 core = 1000 millicores). The value of this field is proportional to that of MemorySize. By default, 100 CPU millicores are required for 128 MB memory. |
| code_type | String | Function code type. Options: inline: inline code zip: ZIP file obs: function code stored in an OBS bucket jar: JAR file, mainly for Java functions Custom-Image-Swr: The function code comes from the SWR custom image. Enumeration values:
|
| code_url | String | If code_type is set to obs, enter the OBS URL of the function code package. If code_type is not set to obs, leave this parameter blank. |
| code_filename | String | Name of a function file. This parameter is mandatory only when code_type is set to jar or zip. |
| code_size | Long | Code size in bytes. |
| user_data | String | Name/Value information defined for the function. These are parameters used in a function. For example, if a function needs to access a host, define Host={host_ip}. You can define a maximum of 20 such parameters, and their total length cannot exceed 4 KB. |
| encrypted_user_data | String | User-defined name/value to be encrypted. |
| digest | String | SHA512 hash value of function code, which is used to determine whether the function has changed. |
| version | String | Function version, which is automatically generated by the system. The version name is in the format of "vYYYYMMDD-HHMMSS" (v+year/month/day-hour/minute/second). |
| image_name | String | Internal identifier of a function version. |
| xrole | String | Agency used by the function. You need to create an agency on the IAM console. This field is mandatory when a function needs to access other services. After specifying a function execution agency, you can use the context method in the function handler to obtain a token, an AK, and an SK for accessing other cloud services. No agency is required if FunctionGraph does not access any cloud services. |
| app_xrole | String | Execution agency. You can optimize performance by configuring a separate agency for function execution, otherwise, the same agency is used for both execution and configuration. |
| description | String | Function description. |
| last_modified | String | Time when the function was last updated. |
| func_vpc | FuncVpc object | VPC configuration. An agency with VPC permissions must be configured for the function. |
| mount_config | MountConfig object | Mounting configuration. |
| strategy_config | StrategyConfig object | Function policy configuration. |
| dependencies | Array of Dependency objects | Dependency packages. |
| initializer_handler | String | Initializer of the function in the format of "xx.xx". It must contain a period (.). This parameter is mandatory when the initialization function is configured. For example, for Node.js function myfunction.initializer, the file name is myfunction.js, and the initialization function is initializer. |
| initializer_timeout | Integer | Maximum duration the function can be initialized. Value range: 1s–300s. This parameter is mandatory when the initialization function is configured. |
| pre_stop_handler | String | The pre-stop handler of a function. The value must contain a period (.) in the format of xx.xx. For example, for Node.js function myfunction.pre_stop_handler, the file name is myfunction.js, and the initialization function is pre_stop_handler. |
| pre_stop_timeout | Integer | Maximum duration the function can be initialized. Value range: 1s–90s. |
| enterprise_project_id | String | Enterprise project ID. This parameter is mandatory if you create a function as an enterprise user. |
| long_time | Boolean | Whether to allow a long timeout. |
| log_group_id | String | Log group ID. |
| log_stream_id | String | Log stream ID. |
| type | String | v2 indicates an official version, and v1 indicates a deprecated version. Enumeration values:
|
| enable_cloud_debug | String | Whether to enable cloud debugging to adapt to the CloudDebug scenario. (discarded) |
| enable_dynamic_memory | Boolean | Whether to enable dynamic memory allocation. |
| is_stateful_function | Boolean | Whether stateful functions are supported. This parameter is supported in FunctionGraph v2. |
| domain_names | String | Private domain name configured for resolution. |
| is_return_stream | Boolean | Whether to return stream data. (discarded) |
| enable_auth_in_header | Boolean | Whether to add authentication information to request header for custom image-based functions. |
| Parameter | Type | Description |
|---|---|---|
| domain_id | String | Domain name ID. |
| namespace | String | Project ID. |
| vpc_name | String | VPC name. |
| vpc_id | String | VPC ID. |
| subnet_name | String | Subnet name. |
| subnet_id | String | Subnet ID. |
| cidr | String | Subnet mask. |
| gateway | String | Gateway. |
| security_groups | Array of strings | Security group. |
| Parameter | Type | Description |
|---|---|---|
| mount_user | MountUser object | User information. |
| func_mounts | Array of FuncMount objects | Mounted resources. |
| Parameter | Type | Description |
|---|---|---|
| user_id | String | User ID, a non-0 integer from –1 to 65534. |
| user_group_id | String | User group ID, a non-0 integer from –1 to 65534. |
| Parameter | Type | Description |
|---|---|---|
| mount_type | String | Mount type. The value can be sfs, sfsTurbo, or ecs. This parameter is mandatory when func_mounts is not empty. |
| mount_resource | String | ID of the mounted resource (cloud service ID). This parameter is mandatory when func_mounts is not empty. |
| mount_share_path | String | Remote mount path. For example, 192.168.0.12:/data. This parameter is mandatory if mount_type is set to ecs. |
| local_mount_path | String | Function access path. This parameter is mandatory when func_mounts is not empty. |
| Parameter | Type | Description |
|---|---|---|
| concurrency | Integer | Maximum number of instances for a single function. For v1, the value can be 0 or –1; for v2, it ranges from –1 to 1000.
|
| concurrent_num | Integer | Number of concurrent requests per instance. This parameter is supported only by v2. The value ranges from 1 to 1,000. |
| Parameter | Type | Description |
|---|---|---|
| id | String | Dependency version ID. |
| owner | String | Domain ID of the dependency owner. |
| link | String | URL of the dependency on OBS. |
| runtime | String | Environment for executing a function. Options: Python2.7 Python 3.6 Python 3.9 Python 3.10 Go 1.x Java 8 Java 11 Node.js 6.10 Node.js 8.10 Node.js 10.16 Node.js 12.13 Node.js 14.18 Node.js 16.17 Node.js 18.15 C# (.NET Core 2.1) C# (.NET Core 3.1) Custom PHP 7.3 HTTP Custom image-based functions Cangjie1.0 Enumeration values:
|
| etag | String | MD5 value of a dependency. |
| size | Long | Dependency size. |
| name | String | Dependence name. |
| description | String | Dependency description. |
| file_name | String | File name of a dependency package (ZIP). |
| version | Long | Dependency version ID. |
| dep_id | String | Dependency ID. |
| last_modified | Integer | Time when the function was last updated. |
Status code: 400
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code. |
| error_msg | String | Error message. |
Status code: 401
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code. |
| error_msg | String | Error message. |
Status code: 403
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code. |
| error_msg | String | Error message. |
Status code: 404
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code. |
| error_msg | String | Error message. |
Status code: 500
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code. |
| error_msg | String | Error message. |
Example Requests
Update the maximum number of instances of a function to 300.
PUT https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/config-max-instance
{
"max_instance_num" : 300
} Example Responses
Status code: 200
OK
{
"func_urn" : "urn:fss:xxxxxxxx:7aad83af3e8d42e99ac194e8419e2c9b:function:default:test",
"func_name" : "test",
"domain_id" : "14ee2e3501124efcbca7998baa24xxxx",
"namespace" : "46b6f338fc3445b8846c71dfb1fbxxxx",
"project_name" : "xxxxxx",
"package" : "default",
"runtime" : "Node.js6.10",
"timeout" : 3,
"handler" : "fssExampleCsharp2.1::fssExampleCsharp21.Program::MyFunc",
"memory_size" : 128,
"cpu" : 300,
"code_type" : "inline",
"code_filename" : "index.js",
"code_size" : 272,
"digest" : "faa825575c45437cddd4e369bea69893bcbe195d478178462ad90984fe72993f3f59d15f41c5373f807f3e05fb9af322c55dabeb16565c386e402413458e6068",
"version" : "latest",
"image_name" : "latest-191025153727@zehht",
"last_modified" : "2019-10-25 15:37:27",
"strategy_config" : {
"concurrency" : 300,
"concurrent_num" : 1
}
} Status Codes
| Status Code | Description |
|---|---|
| 200 | OK |
| 400 | Bad request. |
| 401 | Unauthorized. |
| 403 | Forbidden. |
| 404 | Not found. |
| 500 | Internal server error. |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.