Gateway cloud-native menggabungkan gateway traffic dan gateway layanan mikro dalam satu lapisan, sehingga mengurangi hop jaringan dan beban operasional sekaligus menyediakan tata kelola lalu lintas dan observabilitas bawaan.
Tutorial ini memandu Anda melalui tiga tugas:
Buat entri rute yang meneruskan permintaan ke layanan yang terdaftar di registri MSE Nacos.
Verifikasi bahwa rute berfungsi.
Tambahkan kebijakan throttling untuk melindungi layanan backend dari lonjakan traffic.
Prasyarat
Sebelum memulai, pastikan sumber daya berikut telah siap:
Gateway cloud-native. Untuk informasi selengkapnya, lihat Buat gateway cloud-native MSE.
Engine MSE Nacos. Untuk informasi selengkapnya, lihat Buat engine Nacos.
Layanan yang terdaftar di MSE Nacos. Untuk informasi selengkapnya, lihat Daftarkan aplikasi Spring Cloud ke registri MSE Nacos.
Gateway cloud-native tidak dapat dikaitkan dengan layanan on-premises yang terdaftar di registri MSE Nacos atau ZooKeeper.
Langkah 1: Buat entri rute
Masuk ke Konsol MSE. Di bilah navigasi atas, pilih wilayah.
Di panel navigasi kiri, pilih Cloud-native Gateway > Gateways. Klik nama gateway Anda.
Di panel navigasi kiri, klik Routes, lalu klik Add Route.
Konfigurasikan entri rute dengan pengaturan berikut:
Parameter Nilai Routing Rule Name springcloud-demoDomain name * (wildcard) Path type Prefix Path value /Route Point Single Service 
Pada daftar drop-down Service Name, klik Associate Service. Di panel Associate Service, konfigurasikan parameter untuk lingkungan Anda dan klik OK.

Pilih
nacos-service-consumerdari daftar drop-down Service Name, lalu klik Save and Advertise.
Entri rute kini aktif dan meneruskan semua permintaan masuk ke layanan Nacos yang ditentukan.
Langkah 2: Verifikasi entri rute
Sebelum menambahkan kebijakan perutean apa pun, pastikan gateway meneruskan traffic ke layanan backend dengan benar.
Masuk ke Konsol MSE. Di bilah navigasi atas, pilih wilayah.
Di panel navigasi kiri, pilih Cloud-native Gateway > Gateways. Klik nama gateway Anda.
Di halaman Overview, klik tab Gateway Ingress. Catat alamat IP ingress.
CatatanAlamat IP ingress milik Instance Server Load Balancer (SLB) yang dikaitkan dengan gateway. Untuk menggunakan instance SLB yang dikelola sendiri, lihat Kelola instance SLB yang ditentukan sebagai Ingress.
Kirim permintaan uji:
curl -I http://<gateway-ingress-ip>/echo-rest/helloGanti
<gateway-ingress-ip>dengan alamat IP ingress dari langkah sebelumnya. Untuk menguji layanan backend Anda sendiri, ganti/echo-rest/hellodengan path-nya.Respons yang diharapkan:
HTTP/1.1 200 OK Content-Type: text/plain;charset=UTF-8 Content-Length: 5 Date: Thu, 29 Aug 2024 08:21:47 GMT req-cost-time: 9 req-arrive-time: 1724919707979 resp-start-time: 1724919707988 x-envoy-upstream-service-time: 8 server: istio-envoyRespons
HTTP/1.1 200 OKmengonfirmasi bahwa entri rute berfungsi.
Langkah 3: Tambahkan kebijakan throttling
Dalam skenario konkurensi tinggi, traffic tanpa pembatasan kecepatan dapat membebani layanan backend, menyebabkan respons lambat atau gangguan. Kebijakan throttling memantau permintaan per detik (QPS) suatu entri rute dan memblokir traffic yang melebihi ambang batas.
Untuk daftar lengkap kebijakan perutean, lihat Kebijakan perutean.
Konfigurasikan aturan throttling
Masuk ke Konsol MSE. Di bilah navigasi atas, pilih wilayah.
Di panel navigasi kiri, pilih Cloud-native Gateway > Gateways. Klik nama gateway Anda.
Klik Routes. Temukan entri rute yang telah Anda buat dan klik Policies di kolom Actions.
Di bagian Policies, klik tab Throttling, lalu klik Flow control rules.
Di tab Throttling Rules, konfigurasikan parameter berikut:
Parameter Deskripsi Contoh Overall QPS Threshold Jumlah maksimum permintaan per detik yang diizinkan untuk entri rute ini. 1Web Fallback Behavior Tindakan saat ambang batas terlampaui. Opsi: Returns the specified content atau Jump to the specified page. Returns the specified content HTTP status code Kode status yang dikembalikan saat permintaan dibatasi. Default: 429.429Returned Content-Type Format badan respons. Opsi: Plain text atau JSON. Plain text HTTP Text Pesan kustom yang dikembalikan kepada permintaan yang dibatasi. springcloud-demo flow limitWhether to open Alihkan untuk mengaktifkan atau menonaktifkan aturan. 

Klik New untuk membuat aturan, atau klik Save untuk memperbarui aturan yang sudah ada. Di dialog konfirmasi, klik OK.
Verifikasi kebijakan throttling
Kirim permintaan beruntun secara cepat untuk memicu ambang batas throttling. Gunakan skrip sesuai sistem operasi Anda:
Linux / macOS
#!/bin/bash
URL="http://<gateway-ingress-ip>/echo-rest/hello"
while true; do
curl -i -s $URL
doneWindows
@echo off
set "localUrl=http://<gateway-ingress-ip>/echo-rest/hello"
:loop
curl -i -s %localUrl%
goto loopGanti <gateway-ingress-ip> dengan alamat IP ingress gateway Anda.
Saat QPS melebihi ambang batas, gateway mengembalikan 429 Too Many Requests:
HTTP/1.1 429 Too Many Requests
content-type: text/plain; charset=UTF-8
content-length: 26
date: Thu, 29 Aug 2024 08:54:46 GMT
server: istio-envoy
springcloud-demo flow limitPermintaan yang berada di bawah ambang batas tetap mengembalikan 200 OK:
HTTP/1.1 200 OK
Content-Type: text/plain;charset=UTF-8
Content-Length: 5
Date: Thu, 29 Aug 2024 08:54:46 GMT
req-cost-time: 8
req-arrive-time: 1724921686961
resp-start-time: 1724921686970
x-envoy-upstream-service-time: 7
server: istio-envoyOutput campuran ini mengonfirmasi bahwa throttling berfungsi. Permintaan yang melebihi ambang batas QPS mengembalikan 429, sedangkan yang berada di bawah ambang batas mengembalikan 200.
Langkah selanjutnya
Jelajahi kebijakan perutean tambahan seperti pengubahan header, CORS, dan retry.
Jika mengalami masalah, lihat FAQ tentang gateway cloud-native atau gunakan tool diagnostik AI untuk troubleshooting otomatis.