The GPU memory capacity for the function. Unit: MB. The value must be a multiple of 1,024.
Debugging
Authorization information
The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action
policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:
- Operation: the value that you can use in the Action element to specify the operation on a resource.
- Access level: the access level of each operation. The levels are read, write, and list.
- Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
- The required resource types are displayed in bold characters.
- If the permissions cannot be granted at the resource level,
All Resources
is used in the Resource type column of the operation.
- Condition Key: the condition key that is defined by the cloud service.
- Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
Operation | Access level | Resource type | Condition key | Associated operation |
---|---|---|---|---|
fc:UpdateFunction | update |
|
| none |
Request syntax
PUT /2021-04-06/services/{serviceName}/functions/{functionName} HTTP/1.1
Request parameters
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
functionUpdateFields | object | No | The function update structure. | |
code | Code | No | Function code packages can be provided with the following two methods. You must use only one of the methods in a single request.****
| |
customContainerConfig | CustomContainerConfig | No | The configurations of the Custom Container runtime. After you configure the Custom Container runtime, Function Compute can execute the function in by using a custom container image. | |
layers | array | No | A list of layers. Note
Multiple layers are merged based on the order of array subscripts. The content of a layer with a smaller subscript overwrites the file that has the same name of a layer with a larger subscript.
| |
string | No | The ARN of the layer. | layername | |
description | string | No | The description of the function. | test desc |
environmentVariables | object | No | The environment variables that are configured for the function. You can obtain the values of the environment variables from the function. For more information, see Environment variables. | |
string | No | The configurations of environment variables. | {"key":"value"} | |
handler | string | No | The handler of the function. The format varies based on the programming language you use. For more information, see Function handlers. | index.handler |
memorySize | integer | No | The memory capacity for the function. Unit: MB. The memory capacity must be a multiple of 64 MB. The memory size varies based on the function instance type you use. For more information, see the "Instance specifications" section of the Instance types and usage modes topic. | 512 |
runtime | string | No | The runtime of the function. Valid values: nodejs20, nodejs18, nodejs16, nodejs14, nodejs12, nodejs10, nodejs8, nodejs6, nodejs4.4, python3.10, python3.9, python3, python2.7, java11, java8, go1, php7.2, dotnetcore3.1, dotnetcore2.1, custom.debian10, custom, and custom-container. For more information, see Runtimes that are supported by Function Compute. | python3.9 |
timeout | integer | No | The timeout period for function execution. Unit: seconds. Minimum value: 1. Default value: 3. The execution of the function is terminated when the time elapses. | 60 |
initializationTimeout | integer | No | The timeout period for the initializer. Unit: seconds. The minimum value is 1 second. The default value is 3 seconds. When the period ends, the execution of the initializer is terminated. | 60 |
initializer | string | No | The handler of the initializer. The format varies based on the programming language. For more information, see Function handlers. | index.handler |
caPort | integer | No | The port on which the HTTP server listens for the custom runtime or Custom Container runtime. | 9000 |
InstanceConcurrency | integer | No | The number of requests that can be concurrently processed by a single instance. | 10 |
instanceSoftConcurrency | integer | No | The soft concurrency of the instance. You can use this property to implement graceful scale-ups for instances. If the number of concurrent requests on an instance is greater than the soft concurrency value of the instance, an instance scale-up is triggered. For example, if your instance requires a long time to start, you can specify a suitable soft concurrency to start the instance in advance. The value must be less than or equal to that of instanceConcurrency. | 5 |
instanceType | string | No | The instance type of the function. Valid values:
| e1 |
instanceLifecycleConfig | InstanceLifecycleConfig | No | The lifecycle configurations of the instance. | |
customDNS | CustomDNS | No | The custom Domain Name System (DNS) settings of the function. | |
customRuntimeConfig | CustomRuntimeConfig | No | The configurations of the function that runs in the custom runtime. | |
customHealthCheckConfig | CustomHealthCheckConfig | No | The custom health check configurations of the function. This parameter is applicable only to custom runtimes and Custom Container runtimes. | |
cpu | float | No | The CPU size of the function. Unit: vCPUs. The value is a multiple of 0.05 vCPUs. | 1.5 |
diskSize | integer | No | The disk size of the function. Unit: MB. Valid values: 512 MB and 10240 MB. | 512 |
gpuMemorySize | integer | No | The GPU memory size of the function. Unit: MB, which is a multiple of 1024 MB. | 2048 |
Response parameters
Examples
Sample success responses
JSON
format
{
"codeChecksum": "5434025278388143772",
"codeSize": 1024,
"createdTime": "2016-08-15T15:00:00.000+0000",
"customContainerConfig": {
"args": "[\"-arg1\", \"value1\"]",
"command": "[\"/code/myserver\"]",
"image": "registry-vpc.cn-hangzhou.aliyuncs.com/fc-demo/helloworld:v1beta1",
"accelerationType": "Default",
"instanceID": "cri-xxxxxxxxxx",
"webServerMode": true
},
"layers": [
"md5#layername#version"
],
"description": "This is a demo hello world function",
"environmentVariables": {
"key": "{\"key\":\"value\"}"
},
"functionId": "2d28e0e9-9ba5-4eed-8b1a-d3d9cd24****",
"functionName": "demo-function",
"handler": "index.handler",
"lastModifiedTime": "2016-08-15T17:00:00.000+0000",
"memorySize": 512,
"runtime": "python3.9",
"timeout": 10,
"initializationTimeout": 60,
"initializer": "index.handler",
"caPort": 9000,
"instanceType": "e1",
"instanceSoftConcurrency": 5,
"instanceLifecycleConfig": {
"preFreeze": {
"handler": "index.preStop",
"timeout": 10
},
"preStop": {
"handler": "index.preStop",
"timeout": 10
}
},
"customDNS": {
"nameServers": [
"8.8.x.x"
],
"searches": [
"ns1.svc.cluster-domain.example"
],
"dnsOptions": [
{
"name": "ndots",
"value": "2"
}
]
},
"customRuntimeConfig": {
"command": [
"/code/myBootstrap"
],
"args": [
"args1"
]
},
"customHealthCheckConfig": {
"httpGetUrl": "/ready",
"initialDelaySeconds": 1,
"periodSeconds": 1,
"timeoutSeconds": 2,
"failureThreshold": 1,
"successThreshold": 2
},
"cpu": 1.5,
"diskSize": 512,
"instanceConcurrency": 10,
"gpuMemorySize": 2048,
"layersArnV2": [
"acs:fc:cn-hangzhou:official:layers/Python310/versions/2"
]
}
Error codes
For a list of error codes, visit the Service error codes.
Change history
Change time | Summary of changes | Operation |
---|---|---|
2023-07-27 | The response structure of the API has changed | View Change Details |
2023-07-27 | The response structure of the API has changed | View Change Details |
2023-06-29 | The response structure of the API has changed | View Change Details |
2021-06-30 | The request parameters of the API has changed | View Change Details |
2021-06-30 | The response structure of the API has changed | View Change Details |
2021-06-30 | The response structure of the API has changed | View Change Details |