Untuk layanan Cloud Run, setelan waktu tunggu permintaan menentukan waktu saat respons harus ditampilkan oleh layanan yang di-deploy ke Cloud Run. Jika respons tidak ditampilkan dalam waktu yang ditentukan, permintaan akan berakhir dan error 504 akan ditampilkan. Perlu diingat bahwa instance container yang menyajikan permintaan tidak dihentikan.
Waktu tunggu ditetapkan secara default ke 5 menit (300 detik) dan dapat diperpanjang hingga 60 menit (3600 detik).
Anda dapat mengubah setelan ini saat men-deploy image container atau dengan memperbarui konfigurasi layanan.
Selain mengubah waktu tunggu permintaan Cloud Run, Anda juga harus memeriksa framework bahasa Anda untuk mengetahui apakah framework memiliki setelan waktu tunggu permintaannya sendiri yang juga harus diperbarui. Beberapa klien layanan Cloud Run mungkin juga menerapkan waktu tunggu yang lebih ketat.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan guna mengonfigurasi dan men-deploy layanan Cloud Run, minta administrator untuk memberi Anda peran IAM berikut:
-
Cloud Run Developer (
roles/run.developer
) di layanan Cloud Run -
Service Account User (
roles/iam.serviceAccountUser
) di identitas layanan
Untuk mengetahui daftar peran dan izin IAM yang terkait dengan Cloud Run, lihat peran IAM Cloud Run dan izin IAM Cloud Run. Jika layanan Cloud Run Anda berinteraksi dengan Google Cloud API, seperti Library Klien Cloud, lihat panduan konfigurasi identitas layanan. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat izin deployment dan mengelola akses.
Menyetel dan memperbarui waktu tunggu permintaan
Setiap perubahan konfigurasi akan menghasilkan revisi baru. Revisi berikutnya juga akan otomatis mendapatkan setelan konfigurasi ini, kecuali jika Anda melakukan pembaruan eksplisit untuk mengubahnya.
Anda dapat menetapkan waktu tunggu permintaan menggunakan konsol Google Cloud, command line gcloud, atau file YAML saat Anda membuat layanan baru atau men-deploy revisi baru.
Konsol
Di konsol Google Cloud, buka Cloud Run:
Klik Deploy container dan pilih Service untuk mengonfigurasi layanan baru. Jika Anda mengonfigurasi layanan yang sudah ada, klik layanan, lalu klik Edit dan deploy revisi baru.
Jika Anda mengonfigurasi layanan baru, isi halaman setelan layanan awal, lalu klik Container, volume, networking, security untuk memperluas halaman konfigurasi layanan.
Klik tab Container.
- Di kolom Waktu tunggu permintaan, masukkan nilai waktu tunggu yang ingin Anda gunakan dalam satuan detik. Gunakan nilai yang berkisar dari
1
hingga3600
detik, atau dari 1 hingga60
menit.
- Di kolom Waktu tunggu permintaan, masukkan nilai waktu tunggu yang ingin Anda gunakan dalam satuan detik. Gunakan nilai yang berkisar dari
Klik Buat atau Deploy.
gcloud
Anda dapat memperbarui waktu tunggu permintaan untuk revisi tertentu kapan saja menggunakan perintah berikut:
gcloud run services update [SERVICE] --timeout=[TIMEOUT]
Ganti
[SERVICE]
dengan nama layanan Anda.[TIMEOUT]
dengan waktu yang diinginkan, menggunakan nilai bilangan bulat atau nilai durasi absolut, misalnya1m20s
yaitu 1 menit, 20 detik. Jika Anda menggunakan nilai bilangan bulat, satuannya akan diasumsikan sebagai detik. Nilai yang Anda tentukan harus kurang dari 60 menit.
Anda juga dapat menetapkan waktu tunggu permintaan selama deployment menggunakan perintah:
gcloud run deploy --image IMAGE_URL --timeout=[TIMEOUT]
Ganti
- IMAGE_URL dengan referensi ke image container
misalnya,
us-docker.pkg.dev/cloudrun/container/hello:latest
. Jika Anda menggunakan Artifact Registry, repositori REPO_NAME harus sudah dibuat. URL berbentukLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG
[TIMEOUT]
dengan waktu yang diinginkan, menggunakan nilai bilangan bulat atau nilai durasi, misalnya1m20s
yaitu 1 menit, 20 detik. Jika Anda menggunakan nilai bilangan bulat, satuannya akan diasumsikan sebagai detik. Nilai yang Anda tentukan harus kurang dari 60 menit.
YAML
Jika Anda membuat layanan baru, lewati langkah ini. Jika Anda mengupdate layanan yang sudah ada, download konfigurasi YAML-nya:
gcloud run services describe SERVICE --format export > service.yaml
Perbarui atribut
timeoutSeconds
:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE spec: template: metadata: name: REVISION spec: containers: - image: IMAGE timeoutSeconds: VALUE
Ganti
- SERVICE dengan nama layanan Cloud Run Anda
- IMAGE_URL dengan referensi ke image container, misalnya,
us-docker.pkg.dev/cloudrun/container/hello:latest
. Jika Anda menggunakan Artifact Registry, repositori REPO_NAME harus sudah dibuat. URL berbentukLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG
- VALUE dengan waktu tunggu yang diinginkan, dalam satuan detik.
- REVISION dengan nama revisi baru atau hapus (jika ada). Jika Anda memberikan nama revisi baru, nama tersebut harus memenuhi kriteria berikut:
- Dimulai dengan
SERVICE-
- Hanya berisi huruf kecil, angka, dan
-
- Tidak diakhiri dengan
-
- Tidak melebihi 63 karakter
- Dimulai dengan
Buat atau perbarui layanan menggunakan perintah berikut:
gcloud run services replace service.yaml
Terraform
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
Tambahkan kode berikut ke resource google_cloud_run_v2_service
di konfigurasi Terraform
Anda, di bagian template
. Ganti 300s
dengan waktu tunggu permintaan yang diinginkan untuk layanan Anda.
Lihat setelan waktu tunggu permintaan
Untuk melihat setelan waktu tunggu permintaan saat ini untuk layanan Cloud Run Anda:
Konsol
Di konsol Google Cloud, buka Cloud Run:
Klik layanan yang Anda minati untuk membuka halaman Detail layanan.
Klik tab Revisi.
Pada panel detail di sebelah kanan, setelan waktu tunggu permintaan tercantum di bagian tab Container.
gcloud
Gunakan perintah berikut:
gcloud run services describe SERVICE
Temukan setelan waktu tunggu permintaan dalam konfigurasi yang ditampilkan.