Bir fonksiyon oluşturur.
Try it now
Test
RAM authorization
|
Action |
Access level |
Resource type |
Condition key |
Dependent action |
|
fc:CreateFunction |
create |
*All Resource
|
None | None |
Request syntax
POST /2021-04-06/services/{serviceName}/functions HTTP/1.1
Path Parameters
|
Parameter |
Type |
Required |
Description |
Example |
| serviceName |
string |
Yes |
Hizmetin adı. |
serviceName |
Request parameters
|
Parameter |
Type |
Required |
Description |
Example |
| X-Fc-Account-Id |
string |
No |
Alibaba Cloud hesabınızın kimliği. |
188077086902**** |
| function |
object |
No |
Fonksiyonun tanımı. |
|
| code | Code |
No |
Fonksiyon kodunun ZIP paketi. code veya customContainerConfig parametrelerinden birini belirtmeniz gerekir. |
|
| customContainerConfig | CustomContainerConfig |
No |
Özel konteyner çalışma zamanı yapılandırmaları. Yapılandırmalar ayarlandıktan sonra fonksiyon, işlevi yürütmek için özel bir konteyner görüntüsü kullanabilir. code veya customContainerConfig parametrelerinden birini belirtmeniz gerekir. |
|
| layers |
array |
No |
Katmanların listesi. Not
Birden fazla katman, dizi indeksinin azalan sırasına göre birleştirilir. Daha küçük bir indekse sahip katmanın içeriği, daha büyük bir indekse sahip katmandaki aynı adlı dosyaların üzerine yazılır. |
|
|
string |
No |
Katman kaynağının adı. Biçim: acs:fc:{region}:{accountID}:layers/{layerName}/versions/{layerVersion}. |
layerName |
|
| description |
string |
No |
Fonksiyonun açıklaması. |
function-description |
| functionName |
string |
Yes |
Fonksiyonun adı. Ad yalnızca harf, rakam, alt çizgi (_) ve tire (-) içerebilir. Ad bir rakam veya tire (-) ile başlayamaz. Ad 1 ila 64 karakter uzunluğunda olmalıdır. |
functionName |
| handler |
string |
Yes |
Fonksiyonun giriş noktası. Biçim dile göre değişir. Daha fazla bilgi için bkz. Fonksiyon giriş noktası. |
index.handler |
| initializationTimeout |
integer |
No |
Başlatıcı fonksiyonun zaman aşımı süresi. Varsayılan değer: 3. Birim: saniye. Minimum değer: 1. Maksimum değer: 300 (5 dakika). Fonksiyon bu zaman aşımı süresini aşarsa sonlandırılır. |
60 |
| initializer |
string |
No |
Başlatıcı fonksiyonun giriş noktası. Daha fazla bilgi için bkz. Başlatıcı fonksiyon. |
index.initializer |
| memorySize |
integer |
No |
Fonksiyonun bellek boyutu. Birim: MB. Değer, 64 MB'ın katı olmalıdır. Bellek teknik özellikleri, fonksiyon örnek türüne göre değişir. Daha fazla bilgi için bkz. Örnek teknik özellikleri. |
512 |
| runtime |
string |
Yes |
Fonksiyonun çalışma zamanı ortamı. Geçerli değerler: 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 ve custom-container. Daha fazla bilgi için bkz. Desteklenen fonksiyon çalışma zamanı ortamları. |
python3.9 |
| timeout |
integer |
No |
Fonksiyonun zaman aşımı süresi. Birim: saniye. Minimum değer: 1. Varsayılan değer: 3. Fonksiyon bu zaman aşımı süresini aşarsa sonlandırılır. |
60 |
| caPort |
integer |
No |
Özel çalışma zamanı veya özel konteyner çalışma zamanı için HTTP sunucusunun dinleme bağlantı noktası. |
9000 |
| environmentVariables |
object |
No |
Fonksiyonun ortam değişkenleri. Ortam değişkenlerine fonksiyon içinden erişebilirsiniz. Daha fazla bilgi için bkz. Ortam değişkenleri. |
|
|
string |
No |
Ortam değişkeni yapılandırması. |
{"key":"value"} |
|
| instanceConcurrency |
integer |
No |
Bir örneğin maksimum eş zamanlılığı. |
10 |
| instanceSoftConcurrency |
integer |
No |
Bir örneğin sorunsuz ölçek genişletme için kullanılan yumuşak eş zamanlılığı. Bir örnekteki eş zamanlılık, yumuşak eş zamanlılığı aştığında örnek ölçek genişletme tetiklenir. Örneğin, örneğinizin başlaması uzun sürüyorsa, örnekleri önceden başlatmak için uygun bir yumuşak eş zamanlılık ayarlayabilirsiniz. Değer, instanceConcurrency değerinden küçük veya ona eşit olmalıdır. |
5 |
| instanceType |
string |
No |
Fonksiyonun örnek türü. Geçerli değerler:
Varsayılan değer: e1 |
e1 |
| customRuntimeConfig | CustomRuntimeConfig |
No |
Özel çalışma zamanı fonksiyonunun ayrıntılı yapılandırması. |
|
| instanceLifecycleConfig | InstanceLifecycleConfig |
No |
Örnek yaşam döngüsü yapılandırması. |
|
| customDNS | CustomDNS |
No |
Fonksiyonun özel DNS yapılandırması. |
|
| customHealthCheckConfig | CustomHealthCheckConfig |
No |
Fonksiyonun özel sağlık denetimi yapılandırması. Bu parametre yalnızca özel çalışma zamanı ve özel konteyner için geçerlidir. |
|
| cpu |
number |
No |
Fonksiyonun CPU teknik özellikleri. Birim: vCPU. Değer, 0,05 vCPU'nun katı olmalıdır. |
1.5 |
| diskSize |
integer |
No |
Fonksiyonun disk teknik özellikleri. Birim: MB. Geçerli değerler: 512 MB veya 10240 MB. |
512 |
| gpuMemorySize |
integer |
No |
Fonksiyonun GPU bellek teknik özellikleri. Birim: MB. Değer, 1024 MB'ın katı olmalıdır. |
2048 |
| X-Fc-Code-Checksum |
string |
No |
Fonksiyon kodu paketinin CRC-64 değeri. |
1506052139770049xxxx |
| X-Fc-Date |
string |
No |
Fonksiyon çağrısının başlangıç tarihi. Biçim: EEE,d MMM yyyy HH:mm:ss GMT. |
Wed, 11 May 2022 09:00:00 GMT |
| X-Fc-Trace-Id |
string |
No |
Fonksiyonun çağrı kimliği. Bu değer, yanıt parametrelerindeki requestId değerine karşılık gelir. |
test-trace-id |
Response elements
|
Element |
Type |
Description |
Example |
|
object |
Bir işlev oluşturma yanıtı. |
||
| codeChecksum |
string |
İşlev kod paketinin CRC64 değeri. |
5434025278388143772 |
| codeSize |
integer |
Sistem tarafından döndürülen işlev kod paketinin bayt cinsinden boyutu. |
1024 |
| createdTime |
string |
İşlevin oluşturulduğu zaman. |
2016-08-15T15:00:00.000+0000 |
| customContainerConfig | CustomContainerConfig |
Özel Konteyner çalışma zamanı yapılandırması. Bu parametre yapılandırıldıktan sonra işlev, işlevi yürütmek için özel bir konteyner görüntüsü kullanabilir. |
|
| layers |
array |
Katmanların listesi. Not
Birden fazla katman, dizi indeksinin azalan sırasına göre birleştirilir. Daha küçük bir indekse sahip katmanın içeriği, daha büyük bir indekse sahip katmandaki aynı adlı dosyaların üzerine yazılır. |
|
|
string |
Katman kaynağının adı. |
md5#layername#version |
|
| description |
string |
Fonksiyonun açıklaması. |
This is a demo hello world function |
| functionId |
string |
Sistem tarafından her işlev için oluşturulan benzersiz kimlik. |
2d28e0e9-9ba5-4eed-8b1a-d3d9cd24 **** |
| functionName |
string |
İşlevin adı. |
demo-function |
| handler |
string |
İşlevin yürütme girişi. |
index.handler |
| lastModifiedTime |
string |
İşlevin son değiştirilme zamanı. |
2016-08-15T17:00:00.000+0000 |
| memorySize |
integer |
İşlev için yapılandırılan MB cinsinden bellek boyutu. |
512 |
| runtime |
string |
Fonksiyonun çalışma zamanı ortamı. Geçerli değerler: 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 ve custom-container. Daha fazla bilgi için bkz. Desteklenen fonksiyon çalışma zamanı ortamları. |
python3.9 |
| timeout |
integer |
İşlev yürütmesi için saniye cinsinden zaman aşımı süresi. Varsayılan değer: 60. Minimum değer: 1. Maksimum değer: 600 (10 dakika). İşlev belirtilen zaman aşımı süresinden daha uzun süre çalışırsa yürütme sonlandırılır. |
10 |
| initializationTimeout |
integer |
Başlatıcı işlev yürütmesi için saniye cinsinden zaman aşımı süresi. Minimum değer: 1. Varsayılan değer: 3. Başlatıcı işlev bu süreyi aşarsa yürütme sonlandırılır. |
60 |
| initializer |
string |
Başlatıcı işlev yürütmesinin giriş noktası. Belirli biçim programlama diline bağlıdır. |
index.handler |
| caPort |
integer |
Özel Çalışma Zamanı veya Özel Konteyner çalışma zamanı için HTTP sunucusunun dinleme bağlantı noktası. |
9000 |
| environmentVariables |
object |
İşlev için yapılandırılan ortam değişkenleri. Ortam değişkenlerinin değerlerini işlev içinden alabilirsiniz. Daha fazla bilgi için Ortam değişkenleri bölümüne bakın. |
|
|
string |
Ortam değişkeni yapılandırması. |
{"key":"value"} |
|
| instanceConcurrency |
integer |
Tek bir işlev örneği için izin verilen maksimum eşzamanlılık. |
10 |
| instanceSoftConcurrency |
integer |
Bir örneğin sorunsuz ölçek genişletme için kullanılan yumuşak eş zamanlılığı. Bir örnekteki eş zamanlılık, yumuşak eş zamanlılığı aştığında örnek ölçek genişletme tetiklenir. Örneğin, örneğinizin başlaması uzun sürüyorsa, örnekleri önceden başlatmak için uygun bir yumuşak eş zamanlılık ayarlayabilirsiniz. Değer, instanceConcurrency değerinden küçük veya ona eşit olmalıdır. |
5 |
| instanceType |
string |
İşlevin örnek türü. Geçerli değerler:
|
e1 |
| instanceLifecycleConfig | InstanceLifecycleConfig |
Örnek yaşam döngüsü yapılandırması. |
|
| customDNS | CustomDNS |
Fonksiyonun özel DNS yapılandırması. |
|
| customRuntimeConfig | CustomRuntimeConfig |
Özel çalışma zamanı fonksiyonunun ayrıntılı yapılandırması. |
|
| customHealthCheckConfig | CustomHealthCheckConfig |
Fonksiyonun özel sağlık denetimi yapılandırması. Bu parametre yalnızca özel çalışma zamanı ve özel konteyner için geçerlidir. |
|
| cpu |
number |
Fonksiyonun CPU teknik özellikleri. Birim: vCPU. Değer, 0,05 vCPU'nun katı olmalıdır. |
1.5 |
| diskSize |
integer |
Fonksiyonun disk teknik özellikleri. Birim: MB. Geçerli değerler: 512 MB veya 10240 MB. |
512 |
| gpuMemorySize |
integer |
Fonksiyonun GPU bellek teknik özellikleri. Birim: MB. Değer, 1024 MB'ın katı olmalıdır. |
2048 |
| layersArnV2 |
array |
Katman ARN'lerinin listesi. |
|
|
string |
Katman kaynak bulucusu. |
acs:fc:cn-hangzhou:official:layers/Python310/versions/2 |
Examples
Success response
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",
"functionId": "2d28e0e9-9ba5-4eed-8b1a-d3d9cd24\n****",
"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,
"environmentVariables": {
"key": "{\"key\":\"value\"}"
},
"instanceConcurrency": 10,
"instanceSoftConcurrency": 5,
"instanceType": "e1",
"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,
"gpuMemorySize": 2048,
"layersArnV2": [
"acs:fc:cn-hangzhou:official:layers/Python310/versions/2"
]
}
Error codes
See Error Codes for a complete list.
Release notes
See Release Notes for a complete list.