Ketika instance API Gateway Cloud-native menerima permintaan akses, gateway tersebut mencocokkan permintaan dengan rute satu per satu berdasarkan prioritas aturan routing dalam urutan menurun. Jika permintaan cocok dengan rute, permintaan tersebut akan diarahkan ke layanan tujuan. Jika tidak ada kecocokan, kode kesalahan 404 dikembalikan.
Prioritas pencocokan rute
Jika terdapat beberapa aturan routing, prioritas diurutkan sebagai berikut dari tertinggi hingga terendah: associated domain name > path > request header > request parameters > creation time.
Tentukan prioritas rute berdasarkan domain name-nya. Semakin panjang string nama domain suatu rute, semakin tinggi prioritasnya.
Tentukan prioritas rute berdasarkan path dalam skenario berikut:
Jika path matching rules dari beberapa rute berbeda, prioritas diurutkan berdasarkan kondisi berikut dari yang tertinggi hingga terendah: equal to > prefix match > regex match.
Jika path matching rules dari beberapa rute sama, semakin panjang string path suatu rute, semakin tinggi prioritasnya.
Tentukan prioritas rute berdasarkan jumlah total pasangan kunci-nilai dalam request header. Semakin besar jumlah total pasangan kunci-nilai dalam header permintaan untuk suatu rute, semakin tinggi prioritasnya.
Tentukan prioritas rute berdasarkan jumlah total pasangan kunci-nilai dalam request parameters. Semakin besar jumlah total pasangan kunci-nilai dalam parameter permintaan untuk suatu rute, semakin tinggi prioritasnya.
Tentukan prioritas rute berdasarkan waktu pembuatan-nya. Semakin awal waktu pembuatan suatu rute, semakin tinggi prioritasnya.
Prosedur
Masuk ke konsol API Gateway.
Di panel navigasi sebelah kiri, klik . Di bilah navigasi atas, pilih wilayah.
Klik API target dan pilih Create Route di pojok kiri atas.
Di halaman Add Route, konfigurasikan parameter dan klik Save.
CatatanRute dicocokkan ketika semua kondisi dalam kebijakan routing terpenuhi. Semakin banyak kondisi yang ditentukan, semakin sedikit permintaan yang dapat dicocokkan.
Permintaan mencocokkan rute berdasarkan urutan yang ditampilkan di tab Rute. Tabel berikut menjelaskan parameter rute.
Parameter
Deskripsi
Route Name
Nama rute yang ingin Anda buat. Anda bisa mengklik Add Route Description dan memasukkan deskripsi untuk rute di bidang Deskripsi Rute.
Domain Name
Satu atau lebih nama domain yang ingin Anda cocokkan untuk rute tersebut.
Jika Anda ingin membuat nama domain, klik Add Domain Name dan konfigurasikan parameter untuk membuat nama domain di panel Tambah Nama Domain.
Path
Parameter Path dalam permintaan HTTP yang ingin Anda teruskan dalam rute.
Jika aturan pencocokan path dari beberapa rute sama, semakin panjang nilai Path suatu rute, semakin tinggi prioritas rute tersebut.
Jika aturan pencocokan path dari beberapa rute berbeda, prioritas rute diurutkan berdasarkan kondisi berikut dari yang tertinggi hingga terendah: Equals To > Prefix > Regular Expression Match.
Equals To: Path lengkap digunakan untuk mencocokkan permintaan dengan rute. Sebagai contoh, Anda dapat mengatur parameter Path menjadi
/user.Prefix: Awalan path digunakan untuk mencocokkan permintaan dengan rute. Sebagai contoh, Anda dapat menggunakan awalan
/useruntuk mencocokkan permintaan dengan rute.Cocok Ekspresi Reguler: Ekspresi reguler digunakan untuk mencocokkan permintaan dengan rute.
More Match Rules
Method
Metode HTTP yang digunakan untuk mencocokkan permintaan HTTP dengan rute. Anda dapat menentukan beberapa nilai untuk parameter Metode untuk mencocokkan lebih banyak permintaan dengan rute. Secara default, ANY dipilih.
Header
Parameter Header yang digunakan untuk mencocokkan permintaan HTTP dengan rute. Jika beberapa rute memiliki aturan pencocokan yang sama, rute yang memiliki jumlah parameter Header lebih besar dalam aturan tersebut memiliki prioritas lebih tinggi.
Query Parameters
Parameter Kueri yang digunakan untuk mencocokkan permintaan HTTP dengan rute. Jika beberapa rute memiliki aturan pencocokan yang sama, rute yang memiliki jumlah Parameter Kueri lebih besar dalam aturan tersebut memiliki prioritas lebih tinggi.
Instance and backend service
Instance
Instansi tempat rute tersebut berlaku.
Scenarios
Jenis layanan tujuan untuk rute tersebut.
Skenario Dasar: Single Service
Skenario Peluncuran Canary: Percentage (Multi-service) dan Tag (Tag-based Routing)
Skenario Lainnya: Mock dan Redirect
Untuk informasi lebih lanjut tentang jenis layanan tujuan, lihat Mode Routing.
CatatanJumlah total persentase lalu lintas layanan tujuan harus 100%.
Backend Services
Layanan backend terkait dan port.
CatatanAnda dapat mengklik Create Service dalam daftar drop-down Nama Layanan untuk memilih sumber dan layanan di panel Layanan Terkait.
Jumlah sumber yang dapat ditambahkan bervariasi berdasarkan jenis sumber.
Jika Jenis Sumber diatur ke ACK, maksimal lima sumber dapat ditambahkan.
Jika Jenis Sumber diatur ke MSE Nacos atau MSE Zookeeper, hanya satu sumber yang dapat ditambahkan.
Policy Configuration
Timeout Period (seconds)
Periode timeout. Nilai default adalah 60. Jika Anda mengatur parameter ini ke 0, tidak ada timeout yang terjadi.
Fallback
Menentukan apakah akan mengaktifkan fallback berdasarkan kebutuhan bisnis Anda. Jika tidak ada node yang tersedia untuk layanan backend ke mana rute tersebut menunjuk, permintaan asli mengakses layanan fallback yang Anda tentukan.
CatatanFallback hanya didukung antara layanan HTTP.
Retry Times
Jumlah percobaan ulang yang diizinkan. Nilai default: 2. Nilai 0 menunjukkan bahwa percobaan ulang tidak diizinkan.
Retry Condition
Kondisi percobaan ulang.
Retry Status Code
Kode status percobaan ulang. Anda dapat menambahkan satu atau lebih kode status percobaan ulang.