All Products
Search
Document Center

Function Compute:UpdateFunction

最終更新日:Apr 28, 2025

The GPU memory capacity for the function. Unit: MB. The value must be a multiple of 1,024.

Debugging

You can run this interface directly in OpenAPI Explorer, saving you the trouble of calculating signatures. After running successfully, OpenAPI Explorer can automatically generate SDK code samples.

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:
    • For mandatory resource types, indicate with a prefix of * .
    • 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.
OperationAccess levelResource typeCondition keyAssociated operation
fc:UpdateFunctionupdate
*Function
acs:fc:{#regionId}:{#accountId}:services/{#ServiceName}/functions/{#FunctionName}
    none
none

Request syntax

PUT /2021-04-06/services/{serviceName}/functions/{functionName} HTTP/1.1

Request parameters

ParameterTypeRequiredDescriptionExample
functionUpdateFieldsobjectNo

Specifies which fields of the function need updating.

codeCodeNo

The code package of the function. Code packages can be provided using the following two methods, but you must use only one of them in a single request:****

  • Specify the names of the Object Storage Service (OSS) bucket (ossBucketName) where the code package is stored and the object (ossObjectName).
  • Set zipFile to the Base64-encoded content of the ZIP file.
customContainerConfigCustomContainerConfigNo

The configurations of the Custom Container runtime. After you configure the Custom Container runtime, Function Compute can execute the function in a container that is created from a custom image.

layersarrayNo

The layers.

Note Multiple layers are merged in the order determined by their array subscripts, from largest to smallest. When there are files with the same name, the content from the layer with the smaller subscript will overwrite the corresponding file in the layer with the larger subscript.
stringNo

The Alibaba Cloud Resource Name (ARN) of the layer.

layername
descriptionstringNo

The description of the function.

test desc
environmentVariablesobjectNo

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.

stringNo

The configurations of environment variables.

{"key":"value"}
handlerstringNo

The handler of the function. The format varies based on the programming language you use. For more information, see Function handlers.

index.handler
memorySizeintegerNo

The memory capacity for the function. Unit: MB. The value must be a multiple of 64. The capacity varies based on the type of the function instance. For more information, see Instance types.

512
runtimestringNo

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
timeoutintegerNo

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
initializationTimeoutintegerNo

The timeout period for the initializer function. Unit: seconds. Minimum value: 1. Default value: 3. The execution of the initializer function is terminated when the time elapses.

60
initializerstringNo

The handler of the initializer function. The format varies based on the programming language you use. For more information, see Function handlers.

index.handler
caPortintegerNo

The listening port of the HTTP server in a custom runtime or a Custom Container runtime.

9000
InstanceConcurrencyintegerNo

The maximum number of requests that a function instance can process at a time.

10
instanceSoftConcurrencyintegerNo

The soft concurrency of the instance. You can use this property to implement graceful scale-out of instances. When the number of concurrent requests exceeds the instance's soft concurrency limit, scale-out is triggered. If your instance has a long startup time, you can specify a soft concurrency value to initiate the instance in advance.

The value must be less than or equal to that of instanceConcurrency.

5
instanceTypestringNo

The instance type of the function. Valid values:

  • e1: elastic instance
  • c1: performance instance
  • fc.gpu.tesla.1: GPU-accelerated instance utilizing Tesla series GPUs
  • fc.gpu.ampere.1: GPU-accelerated instances utilizing Ampere series GPUs
  • fc.gpu.ada.1: GPU-accelerated instances utilizing Ada series GPUs
  • g1: same as fc.gpu.tesla.1
e1
instanceLifecycleConfigInstanceLifecycleConfigNo

The lifecycle configurations of the instance.

customDNSCustomDNSNo

The custom Domain Name System (DNS) settings of the function.

customRuntimeConfigCustomRuntimeConfigNo

The configurations of the custom runtime function.

customHealthCheckConfigCustomHealthCheckConfigNo

The custom health check configurations of the function. This parameter is applicable only to custom runtimes and Custom Container runtimes.

cpufloatNo

The CPU size of the function. Unit: vCPUs. The value is a multiple of 0.05.

1.5
diskSizeintegerNo

The disk size of the function. Unit: MB. Valid values: 512 and 10240.

512
gpuMemorySizeintegerNo

The GPU memory size of the function. Unit: MB. The value is a multiple of 1024.

2048

Response parameters

ParameterTypeDescriptionExample
headersobject
ETagstring
5e547e5605e1dc17a78a6191bc18fbc5
object

The returned data.

customContainerConfigCustomContainerConfig

The configurations of the Custom Container runtime. After you configure the Custom Container runtime, you can use a custom container image to execute functions.

layersarray

The 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.
layerstring
md5#layername#version
runtimestring

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
instanceLifecycleConfigInstanceLifecycleConfig

The lifecycle configurations of the instance.

customDNSCustomDNS

The custom DNS settings of the function.

customRuntimeConfigCustomRuntimeConfig

The configurations of the custom runtime function.

customHealthCheckConfigCustomHealthCheckConfig

The custom health check configurations of the function. This parameter is applicable only to custom runtimes and Custom Container runtimes.

layersArnV2array

A list of layer ARNs.

layerstring

The layer ARN.

acs:fc:cn-hangzhou:official:layers/Python310/versions/2

Examples

Sample success responses

JSONformat

{
  "codeChecksum": 5434025278388144000,
  "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 timeSummary of changesOperation
2023-07-27The response structure of the API has changedView Change Details
2023-07-27The response structure of the API has changedView Change Details
2023-06-29The response structure of the API has changedView Change Details
2021-06-30The request parameters of the API has changedView Change Details
2021-06-30The response structure of the API has changedView Change Details
2021-06-30The response structure of the API has changedView Change Details