Membuat sebuah fungsi.
Coba sekarang
Test
RAM authorization
|
Action |
Access level |
Resource type |
Condition key |
Dependent action |
|
fc:CreateFunction |
create |
*All Resource
|
None | None |
Sintaks permintaan
POST /2021-04-06/services/{serviceName}/functions HTTP/1.1
Path Parameters
|
Parameter |
Type |
Required |
Description |
Example |
| serviceName |
string |
Yes |
Nama layanan. |
serviceName |
Parameter permintaan
|
Parameter |
Type |
Required |
Description |
Example |
| X-Fc-Account-Id |
string |
No |
ID akun Alibaba Cloud Anda. |
188077086902**** |
| function |
object |
No |
Definisi fungsi. |
|
| code | Code |
No |
Paket ZIP kode fungsi. Konfigurasikan salah satu antara code atau customContainerConfig. |
|
| customContainerConfig | CustomContainerConfig |
No |
Konfigurasi runtime Custom Container. Setelah Anda mengonfigurasi runtime Custom Container, Function Compute dapat menjalankan fungsi dalam kontainer yang dibuat dari citra kustom. Konfigurasikan salah satu antara code atau customContainerConfig. |
|
| layers |
array |
No |
Lapisan (layer). Catatan
Beberapa lapisan digabungkan dalam urutan yang ditentukan oleh subskrip larik, dari yang terbesar ke yang terkecil. Ketika ada berkas dengan nama yang sama, konten dari lapisan dengan subskrip yang lebih kecil akan menimpa berkas terkait pada lapisan dengan subskrip yang lebih besar. |
|
|
string |
No |
Alibaba Cloud Resource Name (ARN) dari lapisan. Format-nya adalah acs:fc:{region}:{accountID}:layers/{layerName}/versions/{layerVersion}. |
layerName |
|
| description |
string |
No |
Deskripsi fungsi. |
function-description |
| functionName |
string |
Yes |
Nama fungsi. Nama harus terdiri dari 1 hingga 64 karakter, dan hanya boleh berisi huruf, angka, garis bawah (_), dan tanda hubung (-). Tidak boleh diawali dengan angka atau tanda hubung (-). |
functionName |
| handler |
string |
Yes |
Handler fungsi. Format-nya bervariasi tergantung pada bahasa pemrograman yang Anda gunakan. Untuk informasi lebih lanjut, lihat Function handlers. |
index.handler |
| initializationTimeout |
integer |
No |
Periode timeout untuk hook Initializer. Satuan: detik. Nilai default: 3. Nilai yang valid: 1 hingga 300. Eksekusi hook Initializer dihentikan setelah periode timeout berakhir. |
60 |
| initializer |
string |
No |
Hook Initializer. Untuk informasi lebih lanjut, lihat Initializer hooks. |
index.initializer |
| memorySize |
integer |
No |
Kapasitas memori untuk fungsi. Satuan: MB. Kapasitas memori harus kelipatan 64 MB. Kapasitas bervariasi berdasarkan tipe instance fungsi. Untuk informasi lebih lanjut, lihat Instance types. |
512 |
| runtime |
string |
Yes |
Runtime fungsi. Nilai yang valid: 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, dan custom-container.******** Untuk informasi lebih lanjut, lihat Runtimes that are supported by Function Compute. |
python3.9 |
| timeout |
integer |
No |
Periode timeout untuk eksekusi fungsi. Satuan: detik. Nilai minimum: 1. Nilai default: 3. Eksekusi fungsi dihentikan setelah periode timeout berakhir. |
60 |
| caPort |
integer |
No |
Port pendengar server HTTP dalam custom runtime atau Custom Container runtime. |
9000 |
| environmentVariables |
object |
No |
Variabel lingkungan yang dikonfigurasi untuk fungsi. Anda dapat memperoleh nilai variabel lingkungan dari fungsi. Untuk informasi lebih lanjut, lihat Environment variables. |
|
|
string |
No |
Konfigurasi variabel lingkungan. |
{"key":"value"} |
|
| instanceConcurrency |
integer |
No |
Jumlah maksimum permintaan yang dapat diproses oleh sebuah instance fungsi dalam satu waktu. |
10 |
| instanceSoftConcurrency |
integer |
No |
Soft concurrency dari instance. Anda dapat menggunakan properti ini untuk menerapkan scale-out instance yang mulus. Ketika jumlah permintaan konkuren melebihi batas soft concurrency dari instance, scale-out dipicu. Jika instance Anda memiliki waktu startup yang lama, Anda dapat menentukan nilai soft concurrency untuk memulai instance lebih awal. Nilainya harus kurang dari atau sama dengan nilai instanceConcurrency. |
5 |
| instanceType |
string |
No |
Tipe instance fungsi. Nilai yang valid:
Nilai default: e1 |
e1 |
| customRuntimeConfig | CustomRuntimeConfig |
No |
Konfigurasi fungsi custom runtime. |
|
| instanceLifecycleConfig |
InstanceLifecycleConfig |
No |
Konfigurasi siklus hidup instance. |
|
| customDNS | CustomDNS |
No |
Pengaturan Domain Name System (DNS) kustom dari fungsi. |
|
| customHealthCheckConfig | CustomHealthCheckConfig |
No |
Konfigurasi health check kustom dari fungsi. Parameter ini hanya berlaku untuk custom runtime dan Custom Container runtime. |
|
| cpu |
number |
No |
Ukuran CPU fungsi. Satuan: vCPU. Nilainya merupakan kelipatan dari 0,05. |
1.5 |
| diskSize |
integer |
No |
Ukuran disk fungsi. Satuan: MB. Nilai yang valid: 512 dan 10240. |
512 |
| gpuMemorySize |
integer |
No |
Ukuran memori GPU fungsi. Satuan: MB. Nilainya merupakan kelipatan dari 1024. |
2048 |
| X-Fc-Code-Checksum |
string |
No |
Nilai CRC-64 dari paket kode fungsi. |
1506052139770049xxxx |
| X-Fc-Date |
string |
No |
Waktu ketika fungsi dipanggil. Format nilainya adalah: EEE,d MMM yyyy HH:mm:ss GMT. |
Wed, 11 May 2022 09:00:00 GMT |
| X-Fc-Trace-Id |
string |
No |
ID trace dari permintaan. Nilainya sama dengan nilai parameter requestId dalam respons. |
test-trace-id |
Elemen respons
|
Element |
Type |
Description |
Example |
|
object |
Data yang dikembalikan. |
||
| codeChecksum |
string |
Nilai CRC-64 dari paket kode fungsi. |
5434025278388143772 |
| codeSize |
integer |
Ukuran paket kode fungsi yang dikembalikan oleh sistem. Satuan: bita (byte). |
1024 |
| createdTime |
string |
Waktu ketika fungsi dibuat. |
2016-08-15T15:00:00.000+0000 |
| customContainerConfig | CustomContainerConfig |
Konfigurasi runtime Custom Container. Setelah Anda mengonfigurasi runtime Custom Container, Function Compute dapat menjalankan fungsi dalam kontainer yang dibuat dari citra kustom. |
|
| layers |
array |
Sebuah larik yang berisi informasi tentang lapisan-lapisan. Catatan
Jika terdapat beberapa lapisan, lapisan-lapisan tersebut digabungkan berdasarkan subskrip larik dalam urutan menurun. Konten lapisan dengan subskrip yang lebih kecil menimpa konten lapisan dengan subskrip yang lebih besar. |
|
|
string |
Nama lapisan. |
md5#layername#version |
|
| description |
string |
Deskripsi fungsi. |
This is a demo hello world function |
| functionId |
string |
ID unik yang dihasilkan oleh sistem untuk fungsi. |
2d28e0e9-9ba5-4eed-8b1a-d3d9cd24 **** |
| functionName |
string |
Nama fungsi. |
demo-function |
| handler |
string |
Handler fungsi. |
index.handler |
| lastModifiedTime |
string |
Waktu ketika fungsi terakhir kali diubah. |
2016-08-15T17:00:00.000+0000 |
| memorySize |
integer |
Ukuran memori yang dikonfigurasi untuk fungsi. Satuan: MB. |
512 |
| runtime |
string |
Runtime fungsi. Nilai yang valid: nodejs20, nodejs18, 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, dan custom-container. Untuk informasi lebih lanjut, lihat Runtimes that are supported by Function Compute. |
python3.9 |
| timeout |
integer |
Periode timeout untuk eksekusi fungsi. Satuan: detik. Nilai default: 60. Nilai yang valid: 1 hingga 600. Ketika periode ini berakhir, eksekusi fungsi dihentikan. |
10 |
| initializationTimeout |
integer |
Periode timeout untuk eksekusi hook Initializer. Satuan: detik. Nilai default: 3. Nilai minimum: 1. Ketika periode berakhir, eksekusi hook Initializer dihentikan. |
60 |
| initializer |
string |
Handler dari hook Initializer. Format ditentukan oleh bahasa pemrograman. |
index.handler |
| caPort |
integer |
Port tempat server HTTP mendengarkan untuk custom runtime atau custom container runtime. |
9000 |
| environmentVariables |
object |
Variabel lingkungan yang dikonfigurasi untuk fungsi. Anda dapat memperoleh nilai variabel lingkungan dari fungsi. Untuk informasi lebih lanjut, lihat Environment variables. |
|
|
string |
Variabel lingkungan yang Anda konfigurasi untuk fungsi. |
{"key":"value"} |
|
| instanceConcurrency |
integer |
Jumlah permintaan yang dapat diproses secara konkuren oleh sebuah instance tunggal. |
10 |
| instanceSoftConcurrency |
integer |
Soft concurrency dari instance. Anda dapat menggunakan parameter ini untuk menerapkan scale-up instance yang mulus. Jika jumlah permintaan konkuren pada sebuah instance lebih besar dari nilai soft concurrency, scale-up instance dipicu. Misalnya, jika instance Anda membutuhkan waktu yang lama untuk dimulai, Anda dapat menentukan soft concurrency yang sesuai untuk memulai instance lebih awal. Nilainya harus kurang dari atau sama dengan nilai parameter instanceConcurrency. |
5 |
| instanceType |
string |
Tipe instance fungsi. Nilai yang valid:
|
e1 |
| instanceLifecycleConfig |
InstanceLifecycleConfig |
Konfigurasi siklus hidup instance. |
|
| customDNS | CustomDNS |
Pengaturan DNS kustom dari fungsi. |
|
| customRuntimeConfig | CustomRuntimeConfig |
Konfigurasi fungsi custom runtime. |
|
| customHealthCheckConfig | CustomHealthCheckConfig |
Konfigurasi health check kustom dari fungsi. Parameter ini hanya berlaku untuk custom runtime dan Custom Container runtime. |
|
| cpu |
number |
Jumlah vCPU dari fungsi. Nilainya merupakan kelipatan dari 0,05. |
1.5 |
| diskSize |
integer |
Ukuran disk fungsi. Satuan: MB. Nilai yang valid: 512 dan 10240. |
512 |
| gpuMemorySize |
integer |
Kapasitas memori GPU untuk fungsi. Satuan: MB. Nilainya merupakan kelipatan dari 1.024. |
2048 |
| layersArnV2 |
array |
Daftar ARN dari lapisan |
|
|
string |
Pencari sumber daya (resource locator) lapisan. |
acs:fc:cn-hangzhou:official:layers/Python310/versions/2 |
Contoh
Respons sukses
JSONformat
{
"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"
]
}
Kode kesalahan
Lihat Error Codes untuk daftar lengkap.
Catatan rilis
Lihat Release Notes untuk daftar lengkap.