Penskalaan otomatis instance container

Dalam penayangan Knative, setiap revisi secara otomatis diskalakan ke jumlah instance container yang diperlukan untuk menangani semua permintaan yang masuk. Jika revisi tidak menerima traffic apa pun, secara default revisi akan diskalakan ke nol instance container. Namun, jika diinginkan, Anda dapat mengubah default ini untuk menentukan instance yang akan tetap tidak ada aktivitas atau "warm" menggunakan setelan instance minimum.

Jumlah instance yang dijadwalkan dipengaruhi oleh:

Dalam beberapa kasus, Anda mungkin ingin membatasi jumlah total instance penampung yang dapat dimulai, karena alasan kontrol biaya atau meningkatkan kompatibilitas dengan resource lain yang digunakan oleh layanan Anda. Misalnya, layanan penayangan Knative Anda mungkin berinteraksi dengan database yang hanya dapat menangani beberapa jumlah koneksi terbuka serentak.

Tentang instance container maksimum

Anda dapat menggunakan setelan instance penampung maksimum untuk membatasi jumlah total instance yang dapat dimulai secara paralel, seperti yang didokumentasikan dalam bagian Menetapkan jumlah maksimum instance penampung.

Melampaui jumlah instance maksimum

Dalam keadaan normal, revisi Anda akan diskalakan dengan membuat instance baru untuk menangani beban traffic masuk. Namun, ketika Anda mengatur batas jumlah instance maksimum pada beberapa skenario instance tidak akan cukup untuk memenuhi beban traffic tersebut. Dalam hal ini, permintaan masuk akan diantrekan hingga 60 detik. Selama periode waktu 60 detik ini, jika instance selesai memproses permintaan, instance tersebut akan tersedia untuk memproses permintaan yang dimasukkan dalam antrean. Jika tidak ada instance yang tersedia selama periode 60 detik, permintaan akan gagal dengan kode error 429 di Cloud Run.

Jaminan penskalaan

Batas instance maksimum adalah batas atas. Menetapkan batas tinggi tidak berarti revisi Anda akan diskalakan ke jumlah instance penampung yang ditentukan. Artinya, jumlah instance penampung pada waktu tertentu tidak boleh melebihi batas.

Lonjakan traffic

Dalam beberapa kasus, seperti lonjakan traffic yang cepat, penayangan Knative mungkin, dalam jangka waktu yang singkat, membuat instance penampung yang sedikit lebih banyak daripada nilai instance maksimum yang ditentukan. Jika layanan Anda tidak dapat menoleransi perilaku sementara ini, Anda mungkin ingin mempertimbangkan margin keamanan dan menetapkan nilai instance maksimum yang lebih rendah.

Deployment

Saat Anda men-deploy revisi baru, penayangan Knative akan memigrasikan traffic secara bertahap dari revisi lama ke revisi baru. Karena batas instance maksimum ditetapkan untuk setiap revisi, Anda mungkin melampaui batas yang ditentukan untuk sementara selama periode setelah deployment.

Instance nonaktif dan meminimalkan cold start

Resource Kubernetes hanya digunakan saat instance menangani permintaan, tetapi ini tidak berarti bahwa penayangan Knative akan segera menonaktifkan instance setelah menangani semua permintaan. Untuk meminimalkan dampak cold start, layanan Knative dapat membuat beberapa instance tetap tidak aktif. Instance ini siap menangani permintaan jika terjadi lonjakan traffic secara tiba-tiba.

Misalnya, ketika instance penampung selesai menangani permintaan, instance tersebut mungkin akan tetap dalam keadaan nonaktif selama beberapa waktu jika permintaan lain perlu ditangani. Instance penampung yang tidak ada aktivitasnya dapat mempertahankan resource, seperti koneksi database terbuka. Namun, untuk Cloud Run, CPU tidak akan tersedia

Untuk menyimpan instance nonaktif agar tersedia secarapermanen, gunakan min-instance setelan.

Langkah selanjutnya