Membuat fungsi.
Coba sekarang
Test
RAM authorization
|
Action |
Access level |
Resource type |
Condition key |
Dependent action |
|
fc:CreateFunction |
create |
*Semua Sumber daya.
|
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. |
layananName |
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. Anda harus menentukan code atau customContainerConfig. |
|
| customContainerConfig | CustomContainerConfig |
No |
Konfigurasi Custom Container. Setelah konfigurasi diatur, fungsi dapat menggunakan gambar kontainer kustom untuk menjalankan fungsi. Anda harus menentukan code atau customContainerConfig. |
|
| layers |
array |
No |
Daftar layer. Catatan
Beberapa layer digabungkan berdasarkan urutan indeks array menurun. Konten layer dengan indeks yang lebih kecil menimpa file dengan nama yang sama di layer dengan indeks yang lebih besar. |
|
|
string |
No |
Nama Sumber daya layer. Format: acs:fc:{Wilayah}:{accountID}:layers/{layerName}/versions/{layerVersion}. |
layerName |
|
| description |
string |
No |
Deskripsi fungsi. |
function-description |
| functionName |
string |
Yes |
Nama fungsi. Nama hanya dapat berisi huruf, angka, garis bawah (_), dan tanda hubung (-). Nama tidak boleh dimulai dengan angka atau tanda hubung (-). Panjang nama harus antara 1 hingga 64 karakter. |
functionName |
| handler |
string |
Yes |
Titik masuk fungsi. Format bervariasi berdasarkan bahasa. Untuk informasi lebih lanjut, lihat Titik masuk fungsi. |
Indeks.handler |
| initializationTimeout |
integer |
No |
Periode pengatur waktu untuk fungsi inisialisasi. Nilai default: 3. Unit: detik. Nilai minimum: 1. Nilai maksimum: 300 (5 menit). Fungsi dihentikan jika melebihi periode pengatur waktu ini. |
60 |
| initializer |
string |
No |
Titik masuk fungsi inisialisasi. Untuk informasi lebih lanjut, lihat Fungsi inisialisasi. |
Indeks.initializer |
| memorySize |
integer |
No |
Ukuran memori fungsi. Unit: MB. Nilai harus merupakan kelipatan dari 64 MB. Spesifikasi memori bervariasi berdasarkan tipe instans fungsi. Untuk informasi lebih lanjut, lihat Spesifikasi instans. |
512 |
| runtime |
string |
Yes |
Lingkungan waktu proses fungsi. Nilai 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 Lingkungan waktu proses fungsi yang didukung. |
python3.9 |
| timeout |
integer |
No |
Periode pengatur waktu untuk fungsi. Unit: detik. Nilai minimum: 1. Nilai default: 3. Fungsi dihentikan jika melebihi periode pengatur waktu ini. |
60 |
| caPort |
integer |
No |
Port listening server HTTP untuk runtime kustom atau runtime Kontainer kustom. |
9000 |
| environmentVariables |
object |
No |
Variabel lingkungan fungsi. Anda dapat mengakses variabel lingkungan di dalam fungsi. Untuk informasi lebih lanjut, lihat Variabel lingkungan. |
|
|
string |
No |
Konfigurasi variabel lingkungan. |
{"key":"value"} |
|
| instanceConcurrency |
integer |
No |
Konkurensi maksimum sebuah instans. |
10 |
| instanceSoftConcurrency |
integer |
No |
Konkurensi lunak sebuah instans, digunakan untuk penskalaan keluar yang halus. Ketika konkurensi pada sebuah instans melebihi konkurensi lunak, penskalaan keluar instans akan dipicu. Misalnya, jika instans Anda membutuhkan waktu lama untuk memulai, Anda dapat mengatur konkurensi lunak yang sesuai untuk memulai instans terlebih dahulu. Nilai harus kurang dari atau sama dengan instanceConcurrency. |
5 |
| instanceType |
string |
No |
Tipe instans fungsi. Nilai valid:
Nilai default: e1 |
e1 |
| customRuntimeConfig | CustomRuntimeConfig |
No |
Konfigurasi detail fungsi Custom Runtime. |
|
| instanceLifecycleConfig | InstanceLifecycleConfig |
No |
Konfigurasi siklus hidup instans. |
|
| customDNS | CustomDNS |
No |
Konfigurasi DNS kustom fungsi. |
|
| customHealthCheckConfig | CustomHealthCheckConfig |
No |
Konfigurasi pemeriksaan kesehatan kustom fungsi. Parameter ini hanya berlaku untuk Custom Runtime dan Custom Container. |
|
| cpu |
number |
No |
Spesifikasi CPU fungsi. Unit: vCPU. Nilai harus merupakan kelipatan dari 0,05 vCPU. |
1.5 |
| diskSize |
integer |
No |
Spesifikasi disk fungsi. Unit: MB. Nilai valid: 512 MB atau 10240 MB. |
512 |
| gpuMemorySize |
integer |
No |
Spesifikasi Memori GPU fungsi. Unit: MB. Nilai harus merupakan kelipatan dari 1024 MB. |
2048 |
| X-Fc-Code-Checksum |
string |
No |
Nilai CRC-64 dari paket kode fungsi. |
1506052139770049xxxx |
| X-Fc-Date |
string |
No |
Tanggal mulai pemanggilan fungsi. Format: EEE,d MMM yyyy HH:mm:ss GMT. |
Wed, 11 May 2022 09:00:00 GMT |
| X-Fc-Trace-Id |
string |
No |
ID pemanggilan fungsi. Nilai ini sesuai dengan requestId dalam parameter tanggapan. |
test-trace-id |
Elemen respons
|
Element |
Type |
Description |
Example |
|
object |
Tanggapan untuk membuat fungsi. |
||
| codeChecksum |
string |
Nilai CRC64 paket kode fungsi. |
5434025278388143772 |
| codeSize |
integer |
Ukuran paket kode fungsi yang dikembalikan oleh sistem, dalam byte. |
1024 |
| createdTime |
string |
Waktu saat fungsi dibuat. |
2016-08-15T15:00:00.000+0000 |
| customContainerConfig | CustomContainerConfig |
Konfigurasi runtime Kontainer Kustom. Setelah parameter ini dikonfigurasi, fungsi dapat menggunakan gambar kontainer kustom untuk mengeksekusi fungsi. |
|
| layers |
array |
Daftar layer. Catatan
Beberapa layer digabungkan berdasarkan urutan menurun indeks array. Konten layer dengan indeks lebih kecil menimpa file dengan nama yang sama di layer dengan indeks lebih besar. |
|
|
string |
Nama Sumber daya layer. |
md5#layername#version |
|
| description |
string |
Deskripsi fungsi. |
Ini adalah fungsi demo hello world |
| functionId |
string |
ID unik yang dihasilkan oleh sistem untuk setiap fungsi. |
2d28e0e9-9ba5-4eed-8b1a-d3d9cd24 **** |
| functionName |
string |
Nama fungsi. |
demo-function |
| handler |
string |
Entri eksekusi fungsi. |
Indeks.handler |
| lastModifiedTime |
string |
Waktu modifikasi terakhir fungsi. |
2016-08-15T17:00:00.000+0000 |
| memorySize |
integer |
Ukuran memori yang dikonfigurasi untuk fungsi, dalam MB. |
512 |
| runtime |
string |
Lingkungan waktu proses fungsi. Nilai 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 selengkapnya, lihat Lingkungan runtime fungsi yang didukung. |
python3.9 |
| timeout |
integer |
Periode waktu tunggu untuk eksekusi fungsi, dalam detik. Nilai default: 60. Nilai minimum: 1. Nilai maksimum: 600 (10 menit). Jika fungsi berjalan lebih lama dari periode waktu tunggu yang ditentukan, eksekusi akan dihentikan. |
10 |
| initializationTimeout |
integer |
Periode waktu tunggu untuk eksekusi fungsi inisialisasi, dalam detik. Nilai minimum: 1. Nilai default: 3. Jika fungsi inisialisasi melebihi waktu ini, eksekusi akan dihentikan. |
60 |
| initializer |
string |
Titik masuk untuk eksekusi fungsi inisialisasi. Format spesifik bergantung pada bahasa pemrograman. |
Indeks.handler |
| caPort |
integer |
Port listening server HTTP untuk Custom Runtime atau runtime Kontainer Kustom. |
9000 |
| environmentVariables |
object |
Variabel lingkungan yang dikonfigurasi untuk fungsi. Anda dapat mengambil nilai variabel lingkungan di dalam fungsi. Untuk informasi selengkapnya, lihat Variabel lingkungan. |
|
|
string |
Konfigurasi variabel lingkungan. |
{"key":"value"} |
|
| instanceConcurrency |
integer |
Konkurensi maksimum yang diizinkan untuk satu instans fungsi. |
10 |
| instanceSoftConcurrency |
integer |
Konkurensi lunak instans, digunakan untuk penskalaan keluar yang lancar. Ketika konkurensi pada instans melebihi konkurensi lunak, penskalaan keluar instans dipicu. Misalnya, jika instans Anda membutuhkan waktu lama untuk mulai, Anda dapat menetapkan konkurensi lunak yang sesuai untuk memulai instans terlebih dahulu. Nilai harus kurang dari atau sama dengan instanceConcurrency. |
5 |
| instanceType |
string |
Tipe instans fungsi. Nilai valid:
|
e1 |
| instanceLifecycleConfig | InstanceLifecycleConfig |
Konfigurasi siklus hidup instans. |
|
| customDNS | CustomDNS |
Konfigurasi DNS kustom fungsi. |
|
| customRuntimeConfig | CustomRuntimeConfig |
Konfigurasi detail fungsi Custom Runtime. |
|
| customHealthCheckConfig | CustomHealthCheckConfig |
Konfigurasi pemeriksaan kesehatan kustom fungsi. Parameter ini hanya berlaku untuk Custom Runtime dan Custom Container. |
|
| cpu |
number |
Spesifikasi CPU fungsi. Unit: vCPU. Nilai harus merupakan kelipatan dari 0,05 vCPU. |
1.5 |
| diskSize |
integer |
Spesifikasi disk fungsi. Unit: MB. Nilai valid: 512 MB atau 10240 MB. |
512 |
| gpuMemorySize |
integer |
Spesifikasi Memori GPU fungsi. Unit: MB. Nilai harus merupakan kelipatan dari 1024 MB. |
2048 |
| layersArnV2 |
array |
Daftar ARN layer. |
|
|
string |
Locator Sumber daya layer. |
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.