全部产品
Search
文档中心

:Buat aturan pembatasan parameter panas untuk permintaan HTTP

更新时间:Jun 28, 2025

Microservices Engine (MSE) mendukung pembuatan aturan pembatasan parameter panas untuk permintaan HTTP. Anda dapat membuat aturan ini untuk menerapkan pembatasan halus pada parameter tertentu dalam permintaan HTTP yang digunakan untuk mengakses aplikasi penyedia layanan web. Untuk aplikasi berbasis kerangka kerja web utama seperti kontainer Servlet, Spring Web, dan Spring Boot, MSE menggunakan aturan pembatasan parameter panas untuk mem-parsing parameter permintaan API dan membatasi panggilan sumber daya berdasarkan dimensi seperti alamat IP sumber, nama host, header permintaan, dan parameter permintaan. Hal ini memastikan stabilitas sistem dan bisnis Anda. Topik ini menjelaskan cara membuat aturan pembatasan parameter panas untuk permintaan HTTP pada sebuah aplikasi.

Catatan

Aturan pembatasan parameter panas untuk permintaan HTTP sebelumnya dikenal sebagai aturan perlindungan aplikasi web.

Informasi latar belakang

Dalam skenario penyediaan layanan web, Anda dapat membuat aturan pembatasan untuk permintaan API guna melindungi aplikasi Anda. Selain itu, Anda dapat membatasi panggilan sumber daya berdasarkan dimensi seperti alamat IP sumber dan parameter permintaan untuk melindungi aplikasi bisnis Anda dalam berbagai situasi. Sebagai contoh, dalam skenario layanan web dengan lalu lintas tinggi, Anda perlu menerapkan pembatasan untuk permintaan API, terutama dari alamat IP sumber atau ID produk dengan frekuensi akses tertinggi. Contohnya:

  • Akses ke ID produk yang paling sering dibeli dalam periode waktu tertentu dibatasi untuk mencegah banyak permintaan dikirimkan ke database karena kegagalan cache.

  • Akses dari alamat IP tempat permintaan sering dikirimkan dalam periode waktu tertentu dibatasi untuk mencegah penyalahgunaan.

Prosedur

  1. Masuk ke Konsol MSE, dan pilih wilayah di bilah navigasi atas.

  2. Di panel navigasi kiri, pilih Microservices Governance > Application Governance.

  3. Di halaman Application list, klik kartu sumber daya aplikasi yang diinginkan.

  4. Di halaman detail aplikasi, klik Rincian API di panel kiri. Di tab Layanan WEB halaman yang muncul, klik tab Hotspot Parameter Protection (HTTP Requests). Di tab Perlindungan Parameter Panas (Permintaan HTTP), klik Buat Baru Perlindungan Parameter Panas (Permintaan HTTP).

  5. Di kotak dialog Buat Baru Perlindungan Parameter Panas (Permintaan HTTP), konfigurasikan parameter dan klik New.

    Untuk informasi lebih lanjut tentang parameter, lihat bagian Parameter dari topik ini.

  6. Temukan aturan yang Anda buat dalam daftar aturan dan klik Enable di kolom Status.

  7. Di pesan Tips, klik OK.

Skenario 1: Promo kilat produk populer

Dalam skenario seperti promo kilat, sistem mungkin gagal merespons segera atau bahkan berhenti merespons karena jumlah lalu lintas yang besar. Untuk memastikan stabilitas sistem, Anda dapat membuat aturan pembatasan parameter panas. Jika ambang batas yang ditentukan terlampaui, sistem menolak permintaan berlebih untuk mengakses produk populer.

Sebagai contoh, jika Anda ingin menentukan bahwa sistem memproses maksimal 100 permintaan untuk mengakses produk per detik, Anda dapat mengonfigurasi informasi aturan berikut di kotak dialog Buat Baru Perlindungan Parameter Panas (Permintaan HTTP). Setelah aturan dibuat, sistem memproses maksimal 100 permintaan untuk mengakses setiap produk per detik. Dalam hal ini, sistem menolak permintaan berlebih untuk mengakses setiap produk dan mengembalikan informasi kustom.

  • Setel parameter Parameter Properties ke URL Parameter.

    Catatan

    Saat mengonfigurasi parameter Properti Parameter, pilih parameter yang menentukan ID produk populer. Sebagai contoh, jika parameter stockId menentukan ID produk, Anda dapat memilih Parameter URL dan memasukkan stockId di bidang Nama Parameter URL.

  • Masukkan stockId di bidang URL Parameter Name.

  • Setel parameter Threshold ke 100 permintaan per second.

  • Setel parameter Flow Control Method ke Fast failure.

Skenario 2: Pencegahan penyalahgunaan jahat

Sebagai contoh, jika banyak permintaan penyalahgunaan jahat terjadi selama promosi, sejumlah besar inventaris produk atau sumber daya server akan terpakai. Dalam hal ini, sistem dapat mengantrekan permintaan berdasarkan alamat IP sumber dan memproses permintaan dengan kecepatan konstan untuk mencegah permintaan berlebih memengaruhi stabilitas layanan.

Untuk membuat aturan pembatasan parameter panas, konfigurasikan informasi aturan berikut di kotak dialog Buat Baru Perlindungan Parameter Panas (Permintaan HTTP). Setelah aturan dibuat, sistem memproses permintaan API dari setiap alamat IP setiap 10 milidetik dan mengantrekan permintaan berlebih. Permintaan yang diblokir langsung gagal jika mereka diantrekan lebih dari 30 milidetik.

  • Setel parameter Parameter Properties ke Client IP.

  • Secara default, Number of requests dipilih untuk parameter Threshold Type.

  • Setel parameter Threshold ke 100 permintaan per second.

  • Setel parameter Flow Control Method ke Waiting in line.

  • Setel parameter Timeout ke 30. Unit: milidetik.

  • Aktifkan Whether to open.

Parameter

Tabel berikut menjelaskan parameter yang dapat Anda konfigurasikan di kotak dialog Buat Baru Perlindungan Parameter Panas (Permintaan HTTP).

Parameter

Deskripsi

Configure Protection Rule

Parameter Properties

Parameter permintaan API yang ingin Anda terapkan aturannya.

  • Client IP: alamat IP klien dari mana permintaan dikirim.

    Catatan

    Jika permintaan didistribusikan oleh proxy, sistem pertama-tama mencoba mendapatkan alamat IP dari header permintaan X-Forwarded-For. Jika alamat IP ada, sistem menggunakan alamat IP tersebut sebagai alamat IP klien sebenarnya.

  • Remote Host: nama host klien dari mana permintaan dikirim.

  • Header: header HTTP dari permintaan. Setelah Anda menentukan header, aturan berlaku untuk nilai panas dari header. Jika Anda memilih Header, Anda dapat mengonfigurasi mode pencocokan untuk nilai parameter permintaan. Hanya nilai yang cocok dengan mode yang ditentukan yang dikumpulkan dalam statistik dan dibatasi.

  • URL Parameters: parameter permintaan dalam badan permintaan. Anda harus menentukan nama parameter permintaan. Jika Anda memilih URL Parameters, Anda dapat mengonfigurasi mode pencocokan untuk nilai parameter permintaan. Hanya nilai yang cocok dengan mode yang ditentukan yang dikumpulkan dalam statistik dan dibatasi.

(Opsional) Pola Pencocokan dan String Pencocokan

Jika Anda memilih Header atau URL Parameters untuk Properti Parameter, Anda dapat mengaktifkan Property Value Match, dan menentukan Match Pattern dan Match String.

Match Pattern:

  • accurate: Sistem mencocokkan nilai secara ketat berdasarkan string pencocokan yang ditentukan.

  • Substring: Jika nilai atribut permintaan berisi substring yang ditentukan, pencocokan berhasil. Sebagai contoh, jika substring disetel ke ab, string aba dan cabc dapat dicocokkan, tetapi string cba tidak dapat dicocokkan.

  • Regular: Sistem mencocokkan string berdasarkan ekspresi reguler yang ditentukan.

Threshold Type

Tipe ambang batas. Nilai default: Number of requests.

Threshold

Ambang batas permintaan per detik (QPS) yang memicu aturan. Anda harus menentukan interval di mana sistem memproses permintaan. Unit yang didukung: detik, menit, jam, dan hari.

Sebagai contoh, jika ambang batas disetel ke 10 permintaan per minute, sistem memproses maksimal 10 permintaan per menit.

Pengaturan lanjutan

Flow Control Method

  • Fast failure: Permintaan langsung diblokir jika ambang batas QPS tercapai.

    Catatan

    Jika permintaan diblokir, sistem mengembalikan informasi kustom yang Anda konfigurasikan di langkah Konfigurasikan Perilaku Perlindungan. Jika Anda tidak mengonfigurasi informasi kustom di langkah Konfigurasikan Perilaku Perlindungan, perilaku default yang berisi kode kesalahan 429 dan pesan teks default dikembalikan.

  • Waiting in line: Jika Anda menyetel parameter Tipe Ambang Batas ke Jumlah permintaan, permintaan yang diblokir diproses dengan kecepatan konstan. Permintaan berlebih dapat diantrekan. Anda harus menentukan periode waktu habis. Durasi antrean diperkirakan saat permintaan diantrekan. Jika durasi antrean yang diperkirakan melebihi periode waktu habis yang ditentukan, permintaan langsung gagal tanpa diantrekan. Sebagai contoh, jika ambang batas QPS disetel ke 10 permintaan per detik, sistem memproses permintaan setiap 100 milidetik dan mengantrekan permintaan berlebih. Periode waktu habis menunjukkan durasi antrean maksimum. Permintaan yang durasi antreannya melebihi periode waktu habis langsung ditolak.

    Catatan

    Jika Anda menyetel parameter Efek kontrol aliran ke Menunggu dalam antrean, kami sarankan Anda menyetel ambang batas QPS ke tidak lebih dari 1.000 permintaan per detik.

Burst size

Jika Anda menyetel parameter Flow Control Method ke Fast failure, Anda dapat menentukan jumlah permintaan tambahan yang diizinkan untuk lonjakan lalu lintas.

Expiration Time

Jika Anda menyetel parameter Flow Control Method ke Waiting in line, Anda harus menentukan periode waktu habis. Unit: milidetik. Sebagai contoh, jika ambang batas QPS disetel ke 5 permintaan per detik, sistem memproses permintaan setiap 200 milidetik dan mengantrekan permintaan berlebih. Periode waktu habis menunjukkan durasi antrean maksimum. Permintaan yang durasi antreannya melebihi periode waktu habis langsung ditolak.

Whether to open

  • Aktif: Aturan pembatasan parameter panas untuk permintaan HTTP langsung berlaku setelah dibuat.

  • Nonaktif: Aturan pembatasan parameter panas untuk permintaan HTTP tidak berlaku setelah dibuat.

Configure Protection Behavior

Association Behavior

  • Default Behavior: Ini adalah nilai default.

    Catatan
    • Jika Anda tidak perlu menyesuaikan perilaku setelah pembatasan, Anda dapat menyetel parameter ini ke Perilaku Default.

    • Dalam hal ini, perilaku default yang berisi kode kesalahan 429 dan pesan teks default dikembalikan setelah pembatasan.

  • New behavior: Anda dapat membuat perilaku kustom setelah pembatasan. Setelah perilaku dibuat, Anda dapat memilih perilaku kustom dari daftar drop-down Association Behavior.