Berkomunikasi di antara layanan Anda

ID region

REGION_ID adalah kode singkat yang ditetapkan Google berdasarkan region yang Anda pilih saat membuat aplikasi. Kode ini tidak sesuai dengan negara atau provinsi, meskipun beberapa ID region mungkin tampak mirip dengan kode negara dan provinsi yang umum digunakan. Untuk aplikasi yang dibuat setelah Februari 2020, REGION_ID.r disertakan dalam URL App Engine. Untuk aplikasi lama yang dibuat sebelum tanggal tersebut, ID region bersifat opsional dalam URL.

Pelajari ID region lebih lanjut.

Anda dapat menggunakan berbagai metode untuk berkomunikasi di antara layanan App Engine Anda atau dengan layanan lain, termasuk layanan Google Cloud dan aplikasi eksternal.

Pendekatan paling simpel untuk berkomunikasi dengan layanan App Engine Anda adalah dengan mengirim permintaan HTTP yang ditargetkan, dengan URL yang menyertakan nama atau ID resource. Misalnya, Anda dapat menyertakan ID layanan atau versi yang ingin ditargetkan, selain ID project Google Cloud yang sesuai:


https://VERSION-dot-SERVICE-dot-PROJECT_ID.REGION_ID.r.appspot.com

Perhatikan bahwa panjang gabungan dari VERSION-dot-SERVICE-dot-PROJECT_ID, dengan VERSION sebagai nama versi Anda, SERVICE sebagai nama layanan, dan PROJECT_ID sebagai project ID, tidak boleh lebih dari 63 karakter dan tidak boleh diawali atau diakhiri dengan tanda hubung. Jika panjang gabungan lebih dari 63 karakter, Anda mungkin akan mendapati Error DNS address could not be found.

Pelajari lebih lanjut permintaan di App Engine:

Layanan App Engine juga dapat berkomunikasi menggunakan Pub/Sub, yang menyediakan pesan many-to-many yang asinkron dan andal antarproses, termasuk App Engine. Proses ini dapat berupa instance tertentu dari aplikasi Anda, layanan, atau bahkan aplikasi eksternal.

Untuk berbagi data di seluruh database dan aplikasi App Engine Anda atau beberapa aplikasi eksternal lainnya, lihat Memahami Penyimpanan Data dan File.

Jika menggunakan paket layanan lama, Anda juga dapat meneruskan permintaan antara layanan dan dari layanan ke endpoint eksternal menggunakan URL Fetch API.

Selain itu, layanan di lingkungan standar yang berada dalam project Google Cloud yang sama juga dapat menggunakan salah satu API App Engine untuk tugas berikut:

  • Membagikan satu instance memcache.
  • Berkolaborasi dengan menetapkan tugas antarlayanan melalui Task Queue.

Komunikasi Pribadi

Komunikasi antarlayanan dalam project yang sama

Anda dapat mengizinkan layanan standar App Engine untuk berkomunikasi dengan layanan App Engine lain dalam project yang sama tanpa harus mengekspos layanan tujuan ke internet publik.

Untuk mengizinkan komunikasi antarlayanan dalam project yang sama:

  1. Konfigurasi kontrol masuk dengan menyesuaikan setelan masuk layanan tujuan untuk hanya mengizinkan traffic "internal".

    Setelan "internal" hanya mengizinkan permintaan dari jaringan VPC project. Setelan ini mencakup resource App Engine dari aplikasi klien di jaringan yang sama saat traffic keluar dirutekan melalui konektor. Semua traffic lain dari internet atau project Google Cloud lainnya, termasuk layanan App Engine lainnya, akan diblokir.

  2. Rutekan traffic melalui konektor Akses VPC Serverless:

    1. Untuk setiap versi App Engine yang mengirim traffic pribadi ke endpoint aplikasi lain, pasangkan versi ke konektor Akses VPC Serverless di salah satu jaringan milik project Google Cloud itu sendiri, bukan jaringan VPC Bersama.

    2. Pastikan Akses Google Pribadi diaktifkan untuk subnet yang digunakan oleh konektor Akses VPC Serverless.

    3. Konfigurasi salah satu opsi berikut:

      • Klien meminta untuk menggunakan rentang IP private.googleapis.com dengan menambahkan entri DNS untuk nama host tujuan. Ikuti konfigurasi DNS untuk menambahkan nama host DNS, tetapi pastikan untuk mengonfigurasi zona pribadi untuk menjadi appspot.com, bukan googleapis.com. Selain itu, pastikan bahwa traffic diarahkan ke alamat appspot.com aplikasi tujuan, bukan ke domain kustom. Aplikasi Anda hanya dapat dijangkau di rentang IP private.googleapis.com menggunakan domain appspot.com ini.

      • Aplikasi klien mengirim all-traffic melalui konektor Akses VPC Serverless, bukan mengonfigurasi permintaan untuk menggunakan rentang IP private.googleapis.com.

Komunikasi antarlayanan di berbagai project

Anda dapat memiliki akses pribadi antar-project Google Cloud jika aplikasi yang berjalan dalam project termasuk dalam jaringan VPC Bersama yang dikonfigurasi untuk memanggil aplikasi yang berjalan di project host jaringan VPC Bersama.

Untuk menggunakan pola ini, ikuti langkah-langkah sebelumnya untuk berkomunikasi di antara layanan dalam project yang sama. Di lingkungan standar, pasang setiap versi klien ke konektor Akses VPC Serverless di jaringan VPC Bersama.

Metode komunikasi lain antar-project yang menggunakan akses internal tidak dapat dilakukan di App Engine.

Jalur URL yang direservasi

Jalur URL berikut tidak dapat digunakan:

  • Jalur yang diakhiri dengan /eventlog
  • Jalur yang dimulai dengan /_ah/
  • Beberapa jalur yang diakhiri dengan z