Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menambahkan aturan ke gateway
Aturan gateway memungkinkan Anda mengontrol perutean lalu lintas dan mengganti konfigurasi target di gateway Anda tanpa menyebarkan ulang target. Anda membuat bundel konfigurasi yang mengganti perilaku target, lalu menggunakan aturan untuk mengontrol versi bundel mana yang berlaku untuk lalu lintas mana. Aturan juga mendukung permintaan routing ke target yang berbeda berdasarkan jalur permintaan atau identitas pemanggil.
Gunakan aturan gateway untuk mencapai tujuan berikut:
-
Bereksperimen dengan versi bundel konfigurasi melalui A/B pengujian
-
Sematkan prinsip-prinsip tertentu ke versi bundel konfigurasi untuk debugging
-
Arahkan lalu lintas ke target tertentu berdasarkan jalur permintaan atau identitas penelepon
-
Tetapkan bundel konfigurasi default atau target untuk semua lalu lintas
Cara kerja aturan gateway
Setiap aturan gateway berisi komponen-komponen berikut:
| Komponen | Deskripsi |
|---|---|
|
Prioritas |
Bilangan bulat dari 1 hingga 1.000.000. Angka yang lebih rendah menunjukkan prioritas yang lebih tinggi. Setiap nilai prioritas harus unik dalam gateway. |
|
Syarat (opsional) |
Kriteria yang menentukan apakah aturan cocok dengan permintaan. Aturan tanpa kondisi bertindak sebagai catch-all yang cocok dengan semua lalu lintas. |
|
Tindakan (wajib) |
Tindakan yang harus diambil ketika aturan cocok. Anda dapat mengganti bundel konfigurasi, merutekan ke target tertentu, atau keduanya. |
|
Deskripsi (opsional) |
Deskripsi teks tentang tujuan aturan. |
Resolusi aturan
Gateway mengevaluasi aturan dalam urutan prioritas menaik (angka yang lebih rendah terlebih dahulu). Gateway menyelesaikan setiap jenis tindakan secara independen menggunakan semantik pertandingan pertama.
Tabel berikut menunjukkan bagaimana gateway menyelesaikan aturan untuk permintaan sampel. Dalam contoh ini, peran QA mengirimkan permintaan ke/my-target-canary/chat.
| Prioritas | Ketentuan | Tindakan | Permintaan pertandingan? | Hasil |
|---|---|---|---|---|
|
100 |
Peran QA |
|
Ya |
Menyelesaikan |
|
200 |
Jalur |
|
Ya |
Menyelesaikan untuk |
|
1000000 |
Tidak ada (catch-all) |
|
Ya |
Kedua jenis tindakan sudah diselesaikan. Dilewati. |
Hasil akhir: Permintaan menggunakan bundel versi A dan rute kemy-target-canary.
Tip
Tinggalkan celah antara nomor prioritas (misalnya, 100, 200, 300) sehingga Anda dapat menyisipkan aturan nanti tanpa menomori ulang aturan yang ada.
Ketentuan
Kondisi menentukan permintaan mana yang cocok dengan aturan. Aturan dapat memiliki maksimal 2 kondisi. Aturan tanpa kondisi cocok dengan semua lalu lintas.
Gateway mendukung jenis kondisi berikut:
- Prinsip Pertandingan
-
Mencocokkan permintaan berdasarkan prinsip IAM penelepon.
anyOfDaftar ini berisi 1 hingga 100 entri. Setiap entri menentukaniamPrincipaldengan bidang berikut:-
arn— ARN utama IAM untuk mencocokkan. -
operator(opsional) — Operator perbandingan. Nilai yang valid adalahStringEquals(default) danStringLike. GunakanStringLikeuntuk pencocokan wildcard.
-
- MatchPaths
-
Mencocokkan permintaan berdasarkan jalur permintaan.
anyOfDaftar ini berisi 1 hingga 10 entri. Setiap entri harus menggunakan format/<targetName>/*, di mana<targetName>cocok dengan nama target HTTP yang ada di gateway. Targetnya harus berada diReadynegara.matchPathsKondisi ini hanya didukung untuk gateway dengan target HTTP. Awalan jalur cadangan berikut tidak diperbolehkan:/mcp,,/a2a,/responses/converse,/.well-known.
Logika evaluasi kondisi
-
Dalam tipe kondisi: Gateway menggunakan logika OR. Permintaan cocok jika memenuhi entri apa pun dalam
anyOfdaftar. -
Di seluruh jenis kondisi: Gateway menggunakan logika AND. Jika aturan memiliki keduanya
matchPrincipalsdanmatchPaths, permintaan harus cocok dengan setidaknya satu entri dari setiap jenis kondisi.
Tindakan
Tindakan menentukan apa yang dilakukan gateway ketika aturan cocok. Aturan dapat memiliki maksimal 2 tindakan.
Gateway mendukung jenis tindakan berikut:
- Mengganti bundel konfigurasi ()
configurationBundle -
Ganti bundel konfigurasi yang diterapkan pada lalu lintas yang cocok.
-
staticOverride— Sematkan semua lalu lintas yang cocok ke versi bundel konfigurasi tertentu. Tentukan bundel ARN dan ID versi. -
weightedOverride— Membagi lalu lintas antara dua versi bundel konfigurasi.trafficSplitDaftar harus berisi tepat 2 entri dengan bobot yang berjumlah 100. Bundel konfigurasi harus berada di akun yang sama dengan gateway.
-
- Perutean target (
routeToTarget) -
Rute yang mencocokkan lalu lintas ke target tertentu. Target harus menggunakan protokol HTTP dan berada dalam
Readystatus.-
staticRoute— Merutekan semua lalu lintas yang cocok ke target tertentu berdasarkan nama. -
weightedRoute— Membagi lalu lintas antara dua target.trafficSplitDaftar harus berisi tepat 2 entri dengan bobot yang berjumlah 100. Nama entri split lalu lintas harus unik.
-
Batas
Tabel berikut mencantumkan batas untuk aturan gateway.
| Sumber daya | Kuota |
|---|---|
|
Aturan per gateway |
20 |
|
Rentang prioritas |
1 sampai 1.000.000 |
|
Kondisi maksimum per aturan |
2 |
|
Tindakan maksimum per aturan |
2 |
|
|
100 |
|
|
10 |
|
|
Tepat 2 |
|
|
1 sampai 99 |