関数の構成を更新します。
今すぐお試しください
テスト
RAM 認証
|
アクション |
アクセスレベル |
リソースタイプ |
条件キー |
依存アクション |
|
fc:UpdateFunction |
update |
*Function
|
なし | なし |
リクエスト構文
PUT /2021-04-06/services/{serviceName}/functions/{functionName} HTTP/1.1
パスパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| serviceName |
string |
必須 |
サービスの名前。 |
demoService |
| functionName |
string |
必須 |
関数の名前。 |
demoFunction |
リクエストパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| If-Match |
string |
任意 |
変更対象のリソースが期待されるリソースと同じであることを保証するために使用されます。この値は、CreateFunction、GetFunction、または UpdateFunction 操作のレスポンスから取得されます。 |
e19d5cd5af0378da05f63f891c7467af |
| functionUpdateFields |
object |
任意 |
関数更新の構造体。 |
|
| code | Code |
任意 |
Code 構造体。次の 2 つのメソッドのいずれかを使用して、関数コードパッケージを提供できます。リクエストでは、これらのメソッドのいずれか 1 つのみを使用する必要があります:
|
|
| customContainerConfig | CustomContainerConfig |
任意 |
Custom Container ランタイムの構成。このパラメーターを設定すると、関数はカスタムコンテナイメージを使用して実行できます。 |
|
| layers |
array |
任意 |
レイヤーのリスト。 説明
複数のレイヤーは、配列インデックスの降順でマージされます。インデックスが小さいレイヤーのコンテンツは、インデックスが大きいレイヤーの同じ名前のファイルを上書きします。 |
|
|
string |
任意 |
レイヤーリソースの名前。 |
layername |
|
| description |
string |
任意 |
関数の説明。 |
test desc |
| environmentVariables |
object |
任意 |
関数に設定する環境変数。関数内で環境変数の値を取得できます。詳細については、「環境変数」をご参照ください。 |
|
|
string |
任意 |
環境変数の構成。 |
{"key":"value"} |
|
| handler |
string |
任意 |
関数実行のエントリポイント。フォーマットはプログラミング言語によって異なります。詳細については、「ハンドラ」をご参照ください。 |
index.handler |
| memorySize |
integer |
任意 |
関数のメモリサイズ (MB) 。値は 64 MB の倍数である必要があります。メモリサイズはインスタンスタイプによって異なります。詳細については、「インスタンスタイプ」をご参照ください。 |
512 |
| runtime |
string |
任意 |
関数のランタイム環境。有効値: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、および custom-container。詳細については、「サポートされている関数ランタイム」をご参照ください。 |
python3.9 |
| timeout |
integer |
任意 |
関数の実行タイムアウト期間 (秒) 。最小値:1。デフォルト値:3。実行がこの時間制限を超えると、関数は終了します。 |
60 |
| initializationTimeout |
integer |
任意 |
初期化関数の実行タイムアウト期間 (秒) 。最小値:1。デフォルト値:3。実行がこの時間制限を超えると、初期化関数は終了します。 |
60 |
| initializer |
string |
任意 |
初期化関数のエントリポイント。フォーマットはプログラミング言語によって異なります。詳細については、「ハンドラ」をご参照ください。 |
index.handler |
| caPort |
integer |
任意 |
Custom ランタイムまたは Custom Container ランタイムの HTTP サーバーのリスニングポート。 |
9000 |
| InstanceConcurrency |
integer |
任意 |
インスタンスの最大同時実行数。 |
10 |
| instanceSoftConcurrency |
integer |
任意 |
インスタンスのソフト同時実行数。これはグレースフルスケールアウトに使用されます。インスタンス上の同時リクエスト数がソフト同時実行数を超えると、インスタンスはスケールアウトします。たとえば、インスタンスの起動が遅い場合、適切なソフト同時実行数を設定して、事前にインスタンスを起動できます。 値は instanceConcurrency 以下である必要があります。 |
5 |
| instanceType |
string |
任意 |
関数のインスタンスタイプ。有効値:
|
e1 |
| instanceLifecycleConfig |
InstanceLifecycleConfig |
任意 |
インスタンスライフサイクル構成。 |
|
| customDNS | CustomDNS |
任意 |
関数のカスタム DNS 構成。 |
|
| customRuntimeConfig | CustomRuntimeConfig |
任意 |
Custom Runtime 関数の詳細な構成。 |
|
| customHealthCheckConfig | CustomHealthCheckConfig |
任意 |
関数のカスタムヘルスチェック構成。これは Custom Runtime と Custom Container にのみ適用されます。 |
|
| cpu |
number |
任意 |
関数の CPU 仕様 (vCPU) 。値は 0.05 vCPU の倍数である必要があります。 |
1.5 |
| diskSize |
integer |
任意 |
関数のディスクサイズ (MB) 。有効値:512 MB および 10240 MB。 |
512 |
| gpuMemorySize |
integer |
任意 |
関数の GPU メモリサイズ (MB) 。値は 1024 MB の倍数である必要があります。 |
2048 |
| X-Fc-Account-Id |
string |
任意 |
ご利用の Alibaba Cloud アカウントの ID。 |
188077086902**** |
| X-Fc-Code-Checksum |
string |
任意 |
関数コードパッケージの CRC-64 値。 |
1506052139770049xxxx |
| X-Fc-Date |
string |
任意 |
関数呼び出しの開始日。フォーマットは EEE,d MMM yyyy HH:mm:ss GMT です。 |
Wed, 11 May 2022 09:00:00 GMT |
| X-Fc-Trace-Id |
string |
任意 |
関数を呼び出すために使用される ID。レスポンスの `requestId` パラメーターに対応します。 |
test-trace-id |
レスポンスフィールド
|
フィールド |
型 |
説明 |
例 |
|
object |
関数を更新するためのレスポンスパラメーター。 |
||
| codeChecksum |
string |
関数コードパッケージの CRC-64 値。 |
5434025278388143772 |
| codeSize |
integer |
システムから返される関数コードパッケージのサイズ (バイト) 。 |
1024 |
| createdTime |
string |
関数が作成された時間。 |
2016-08-15T15:00:00.000+0000 |
| customContainerConfig | CustomContainerConfig |
Custom Container ランタイムの構成。このパラメーターを設定すると、関数はカスタムコンテナイメージを使用して実行できます。 |
|
| layers |
array |
レイヤーのリスト。 説明
複数のレイヤーは、配列インデックスの降順でマージされます。インデックスが小さいレイヤーのコンテンツは、インデックスが大きいレイヤーの同じ名前のファイルを上書きします。 |
|
|
string |
レイヤーリソースの名前。 |
md5#layername#version |
|
| description |
string |
関数の説明。 |
This is a demo hello world function |
| environmentVariables |
object |
関数に設定されている環境変数。関数内で環境変数の値を取得できます。詳細については、「環境変数」をご参照ください。 |
|
|
string |
環境変数の構成。 |
{"key":"value"} |
|
| functionId |
string |
システムが各関数に対して生成する一意の ID。 |
2d28e0e9-9ba5-4eed-8b1a-d3d9cd24**** |
| functionName |
string |
関数の名前。 |
demo-function |
| handler |
string |
関数のエントリポイント。 |
index.handler |
| lastModifiedTime |
string |
関数が最後に変更された時間。 |
2016-08-15T17:00:00.000+0000 |
| memorySize |
integer |
関数のメモリサイズ (MB) 。 |
512 |
| runtime |
string |
関数のランタイム環境。有効値: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、および custom-container。詳細については、「サポートされている関数ランタイム」をご参照ください。 |
python3.9 |
| timeout |
integer |
関数の実行タイムアウト期間 (秒) 。 |
10 |
| initializationTimeout |
integer |
初期化関数の実行タイムアウト期間 (秒) 。最小値:1。デフォルト値:3。実行がこの時間制限を超えると、初期化関数は終了します。 |
60 |
| initializer |
string |
初期化関数のエントリポイント。フォーマットはプログラミング言語によって異なります。 |
index.handler |
| caPort |
integer |
Custom ランタイムまたは Custom Container ランタイムの HTTP サーバーのリスニングポート。 |
9000 |
| instanceType |
string |
関数のインスタンスタイプ。有効値:
|
e1 |
| instanceSoftConcurrency |
integer |
インスタンスのソフト同時実行数。これはグレースフルスケールアウトに使用されます。インスタンス上の同時リクエスト数がソフト同時実行数を超えると、インスタンスはスケールアウトします。たとえば、インスタンスの起動が遅い場合、適切なソフト同時実行数を設定して、事前にインスタンスを起動できます。 値は instanceConcurrency 以下である必要があります。 |
5 |
| instanceLifecycleConfig |
InstanceLifecycleConfig |
インスタンスライフサイクル構成。 |
|
| customDNS | CustomDNS |
関数のカスタム DNS 構成。 |
|
| customRuntimeConfig | CustomRuntimeConfig |
Custom Runtime 関数の詳細な構成。 |
|
| customHealthCheckConfig | CustomHealthCheckConfig |
関数のカスタムヘルスチェック構成。これは Custom Runtime と Custom Container にのみ適用されます。 |
|
| cpu |
number |
関数の CPU 仕様 (vCPU) 。値は 0.05 vCPU の倍数である必要があります。 |
1.5 |
| diskSize |
integer |
関数のディスクサイズ (MB) 。有効値:512 MB および 10240 MB。 |
512 |
| instanceConcurrency |
integer |
単一インスタンスの同時実行数。 |
10 |
| gpuMemorySize |
integer |
関数の GPU メモリサイズ (MB) 。値は 1024 MB の倍数である必要があります。 |
2048 |
| layersArnV2 |
array |
レイヤー ARN のリスト。 |
|
|
string |
レイヤーの Alibaba Cloud リソースネーム (ARN) 。 |
acs:fc:cn-hangzhou:official:layers/Python310/versions/2 |
例
成功レスポンス
JSONJSON
{
"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"
]
}
エラーコード
完全なリストについては、「エラーコード」をご参照ください。
変更履歴
完全なリストについては、「変更履歴」をご参照ください。