Memecahkan masalah tampilan regional resource global

Dokumen ini menjelaskan cara memecahkan masalah konsistensi, penundaan replikasi, dan perilaku metrik kuota saat mengkueri resource global melalui endpoint API tampilan regional Compute Engine. Untuk mengetahui informasi selengkapnya tentang endpoint hanya baca yang diregionalisasi, lihat Tampilan regional resource global.

Penundaan replikasi atau resource yang hilang

Saat membuat kueri endpoint metadata regional, Anda mungkin melihat bahwa resource global yang baru dibuat atau kolom metadata yang baru diupdate tidak langsung muncul dalam respons regional.

API tampilan regional melayani permintaan baca dengan membuat kueri replika baca saja regional dari database global pusat. Update yang dilakukan pada resource global utama menggunakan endpoint global standar direplikasi secara asinkron ke replika regional ini.

Replikasi asinkron ini berarti tampilan regional memiliki konsistensi tertunda. Latensi replikasi P99 dari database global pusat ke replika regional biasanya kurang dari 60 detik.

Penyelesaian: Untuk menyelesaikan masalah ini, coba salah satu langkah berikut:

  • Tunggu replikasi: Sebagian besar update replikasi selesai dalam waktu 60 detik. Jika skrip otomatis atau workload klien membuat kueri resource yang baru dibuat, pastikan klien Anda menerapkan logika coba lagi dengan penundaan eksponensial.
  • Memahami penggantian transparan: Jika permintaan GET eksplisit untuk ID resource tertentu yang menargetkan replika regional menghasilkan cache tidak ditemukan, Compute Engine akan otomatis mencoba pembacaan penggantian ke database global pusat dalam transaksi yang sama.
  • Membuat kueri endpoint global untuk konsistensi kuat: Jika pipeline deployment Anda sangat memerlukan konsistensi baca-setelah-tulis langsung tanpa latensi replikasi, buat kueri endpoint global kanonis secara langsung, bukan tampilan regional. Misalnya, kueri projects.get, images.get, atau images.list.

404 Not Found tanggapan

Anda mungkin menerima kode status HTTP 404 Not Found saat mencoba mengambil gambar atau tampilan project tertentu.

Error 404 Not Found dapat terjadi karena alasan berikut:

  • Resource target tidak ada di database global pusat.
  • Resource target dibuat dalam beberapa detik terakhir, replikasi ke replika regional belum selesai, dan permintaan penggantian transparan ke database global pusat mengalami waktu tunggu habis atau gagal.
  • Anda menentukan parameter region atau project ID yang tidak valid di URL permintaan.

Penyelesaian: Untuk menyelesaikan masalah ini, coba langkah berikut:

  1. Pastikan resource yang diminta ada secara global dengan menjalankan permintaan describe atau list global standar—misalnya, gcloud compute images describe IMAGE_NAME atau gcloud compute project-info describe --project=PROJECT_ID.
  2. Periksa jalur URL permintaan untuk memastikan string REGION target valid dan aktif.
  3. Jika resource baru dibuat, coba lagi permintaan setelah 60 detik.

Array quota tidak ada dalam respons projectViews

Saat membuat kueri resource compute.Project menggunakan endpoint projectViews.get regional, array quota akan dikecualikan dari respons.

Untuk mempertahankan isolasi kesalahan regional dan ketersediaan tinggi, endpoint projectViews membaca secara ketat dari replika regionalnya. Karena tidak melakukan fanout lintas region untuk mengumpulkan penggunaan kuota di seluruh zona, array quota akan dikecualikan.

Penyelesaian: Untuk menyelesaikan masalah ini, lakukan langkah-langkah berikut:

  • Pastikan aplikasi Anda tidak mengharapkan array quota dalam respons yang ditampilkan oleh endpoint projectViews regional.
  • Untuk mengambil konfigurasi kuota yang akurat dan metrik penggunaan real-time di semua region dan zona, buat kueri endpoint projects.get global atau pantau metrik kuota Compute Engine API di Cloud Monitoring.

Langkah berikutnya