All Products
Search
Document Center

Serverless App Engine:Perlindungan Lalu Lintas

Last Updated:Jul 06, 2025

Serverless App Engine (SAE) mengintegrasikan kemampuan perlindungan lalu lintas dari Microservices Engine (MSE). Integrasi ini memungkinkan Anda menggunakan berbagai aturan manajemen lalu lintas seperti throttling, isolasi konkurensi, dan aturan pemutusan sirkuit untuk memastikan stabilitas bisnis. Integrasi ini menyediakan mekanisme perlindungan lalu lintas yang profesional dan andal, serta kemampuan analisis distribusi lalu lintas waktu nyata. Topik ini menjelaskan cara mengonfigurasi aturan perlindungan lalu lintas dan memberikan contoh penggunaan.

Prasyarat

Batasan

Fitur ini hanya berlaku untuk aplikasi mikroservis yang dibuat pada 8 November 2023 atau setelahnya.

Pergi ke tab Perlindungan Lalu Lintas di konsol SAE

  1. Masuk ke konsol SAE. Di panel navigasi di sebelah kiri, pilih Applications > Applications. Pada halaman yang muncul, pilih wilayah di bilah navigasi atas dan namespace dari daftar drop-down Namespace, lalu klik nama aplikasi yang diinginkan.

  2. Di panel navigasi di sebelah kiri, pilih Microservice governance > Traffic Governance, dan klik tab Traffic Protection.

Konfigurasikan aturan

Buat aturan throttling

Aturan throttling memantau permintaan per detik (QPS) dari aplikasi atau layanan. Ketika QPS mencapai ambang batas yang telah ditentukan, sistem segera memblokir atau membatasi lalu lintas. Ini mencegah aplikasi kewalahan oleh lonjakan lalu lintas mendadak dan memastikan ketersediaan tinggi serta stabilitas aplikasi.

  1. Klik tab Interface Flow Control, lalu klik Add Throttling Rule.

  2. Di kotak dialog Add Throttling Protection Rule, konfigurasikan parameter.

    1. Di langkah Select Protection Scenario, konfigurasikan parameter API Type, Type of Traffic, dan Interface Name, lalu klik Next.

    2. Di langkah Configure Protection Rule, konfigurasikan parameter dan klik Next.

      Parameter

      Deskripsi

      Whether to open

      Jika Anda menggeser toggle ke posisi ON, aturan langsung berlaku setelah dibuat. Secara default, aturan dinonaktifkan.

      Stand-alone QPS threshold

      Ambang batas QPS yang memicu perilaku aturan throttling.

      Flow control effect

      Metode yang digunakan untuk memproses permintaan yang diblokir. Nilai valid:

      • Fast failure: Permintaan segera diblokir jika ambang batas QPS tercapai. Konten yang dikembalikan bervariasi berdasarkan konfigurasi modul adaptasi dalam pengaturan sistem aplikasi.

      • Waiting in line: Permintaan diproses dengan kecepatan konstan dan permintaan yang terakumulasi diatur dalam antrian. Dalam banyak kasus, nilai ini ditentukan untuk skenario seperti penggeseran beban puncak. Anda harus menentukan periode timeout antrian untuk permintaan. Jika waktu antrian permintaan melebihi periode timeout antrian, permintaan gagal.

    3. Di langkah Configure Protection Behavior, pilih perilaku terkait dan klik New.

    Setelah aturan dibuat, Anda dapat mengedit atau menghapus aturan di tab Interface Flow Control.

Buat aturan isolasi

Anda dapat membuat aturan isolasi untuk mengontrol jumlah utas konkuren antarmuka atau dependensi guna memastikan stabilitas sistem.

  1. Klik tab Concurrency Isolation, lalu klik Add isolation rule.

  2. Di kotak dialog Add Isolation Protection Rule, konfigurasikan parameter.

    1. Di langkah Select Protection Scenario, konfigurasikan parameter API Type, Type of Traffic, dan Interface Name, lalu klik Next.

    2. Di langkah Configure Protection Rule, konfigurasikan parameter dan klik Next.

      Parameter

      Deskripsi

      Whether to open

      Jika Anda menggeser toggle ke posisi ON, aturan langsung berlaku setelah dibuat. Secara default, aturan dinonaktifkan.

      Concurrency threshold

      Jumlah maksimum utas konkuren untuk memproses permintaan.

    3. Di langkah Configure Protection Behavior, pilih perilaku terkait dan klik New.

Setelah aturan dibuat, Anda dapat mengedit atau menghapus aturan di tab Concurrency Isolation.

Konfigurasikan aturan pemutusan sirkuit

Anda dapat mengonfigurasi aturan pemutusan sirkuit untuk memantau waktu respons (RT) permintaan atau rasio permintaan abnormal untuk aplikasi atau aplikasi hilir tempat aplikasi bergantung. Jika ambang batas yang ditentukan tercapai, sistem segera menurunkan prioritas aplikasi hilir yang bergantung. Sistem tidak memanggil aplikasi hilir yang abnormal dalam periode waktu tertentu. Ini memastikan stabilitas dan ketersediaan tinggi aplikasi Anda. Setelah periode waktu tertentu berakhir, sistem melanjutkan panggilan ke aplikasi hilir yang bergantung.

  1. Di tab Circuit Breaking Rule, klik Add Circuit Breaking Rule.

  2. Di kotak dialog Add Circuit Breaking Rule, konfigurasikan parameter.

    1. Di langkah Select Protection Scenario, konfigurasikan parameter API Type dan Interface Name, lalu klik Next.

    2. Di langkah Configure Protection Rule, konfigurasikan parameter dan klik New.

      Parameter

      Deskripsi

      Statistical window duration

      Durasi jendela waktu. Nilai valid: 1 detik hingga 120 menit.

      Minimum number of requests

      Jumlah minimum permintaan untuk memicu pemutusan sirkuit. Jika jumlah permintaan dalam jendela waktu saat ini kurang dari nilai parameter ini, pemutusan sirkuit tidak dipicu meskipun aturan pemutusan sirkuit terpenuhi.

      Threshold Type

      Jenis ambang batas. Nilai valid: Slow call ratio (%) dan Abnormal proportion (%).

      • Jika Anda menetapkan parameter ini ke Slow call ratio, Anda harus menetapkan parameter Slow call RT, yang menentukan ambang batas untuk waktu respons permintaan. Jika waktu respons permintaan melebihi nilai parameter RT panggilan lambat, permintaan dihitung sebagai panggilan lambat.

        Anda juga harus menetapkan parameter Circuit Breaking Ratio Threshold, yang menentukan ambang batas persentase yang memicu pemutusan sirkuit untuk panggilan lambat. Setelah aturan pemutusan sirkuit diaktifkan, jika jumlah permintaan dalam jendela waktu yang ditentukan lebih besar dari nilai parameter Minimum number of requests dan persentase panggilan lambat lebih besar dari nilai parameter Ambang Batas Rasio Pemutusan Sirkuit, permintaan secara otomatis diblokir dalam periode pemutusan sirkuit yang ditentukan oleh parameter Circuit Breaking Duration (s). Setelah periode pemutusan sirkuit berakhir, pemutus sirkuit mendeteksi permintaan berikutnya. Jika waktu respons permintaan berikutnya kurang dari nilai parameter Slow call RT, pemutusan sirkuit berakhir. Jika waktu respons permintaan berikutnya lebih besar dari nilai parameter Slow call RT, pemutusan sirkuit dipicu lagi.

      • Jika Anda menetapkan parameter ini ke Abnormal proportion, Anda harus menetapkan parameter Circuit Breaking Ratio Threshold, yang menentukan ambang batas persentase yang memicu pemutusan sirkuit untuk permintaan abnormal.

        Setelah aturan pemutusan sirkuit diaktifkan, jika jumlah permintaan abnormal dalam jendela waktu lebih besar dari nilai parameter Minimum number of requests dan persentase permintaan abnormal lebih besar dari nilai parameter Ambang Batas Rasio Pemutusan Sirkuit, permintaan secara otomatis diblokir dalam periode pemutusan sirkuit yang ditentukan oleh parameter Circuit Breaking Duration (s).

      Circuit Breaking Duration (s)

      Klik Show Advanced Options. Periode di mana pemutusan sirkuit dilaksanakan. Jika pemutusan sirkuit dilaksanakan pada sumber daya, semua panggilan ke sumber daya gagal dalam periode pemutusan sirkuit yang ditentukan.

      Circuit Breaking Policy

      Klik Show Advanced Options. Menentukan apakah pemutus sirkuit memicu pemutusan sirkuit lagi setelah periode pemutusan sirkuit berakhir. Nilai valid:

      • Single detection recovery: Setelah periode pemutusan sirkuit berakhir, pemutus sirkuit mendeteksi permintaan berikutnya. Jika permintaan tersebut bukan panggilan lambat atau permintaan abnormal, pemutusan sirkuit berakhir. Jika tidak, pemutusan sirkuit dipicu lagi.

      • Progressive recovery: Jika Anda memilih opsi ini, Anda harus menetapkan parameter Number of recovery phases dan Minimum number of passes per step .

        • Setelah periode pemutusan sirkuit berakhir, pemutus sirkuit melakukan pemulihan progresif berdasarkan jumlah fase pemulihan yang ditentukan. Jika jumlah permintaan dalam suatu fase mencapai nilai parameter Jumlah minimum lolos per langkah, pemeriksaan dipicu. Jika jumlah permintaan yang diperiksa tidak melebihi ambang batas yang dikonfigurasi, persentase permintaan yang diizinkan lolos secara bertahap meningkat hingga semua permintaan diizinkan lolos. Jika jumlah permintaan yang diperiksa melebihi ambang batas yang dikonfigurasi dalam suatu fase, pemutusan sirkuit dipicu lagi.

        • Persentase permintaan dihitung berdasarkan rumus berikut: Persentase Permintaan (T) = 100/Jumlah fase pemulihan (N). Persentase permintaan di fase pertama adalah T dan persentase permintaan di fase kedua adalah 2T. Perhitungan berakhir hingga persentase permintaan sama dengan 100%.

        • Sebagai contoh, jika jumlah fase pemulihan adalah 3 dan jumlah minimum permintaan yang diizinkan lolos di setiap fase adalah 5, permintaan didistribusikan dalam tiga fase berdasarkan persentase 33%, 67%, dan 100%. Jika jumlah permintaan di setiap fase lebih besar dari atau sama dengan 5, pemeriksaan dipicu. Jika jumlah permintaan di setiap fase kurang dari 5, sistem masuk ke fase pemulihan berikutnya hingga semua permintaan diizinkan lolos.

Setelah aturan dibuat, Anda dapat mengedit atau menghapus aturan di tab Circuit Breaking Rule.

Buat aturan perlindungan parameter hotspot (RPC)

Setelah Anda membuat aturan RPC untuk aplikasi, sistem menganalisis dan mengumpulkan statistik parameter hotspot yang paling sering diakses selama pemanggilan sumber daya dan membatasi pemanggilan sumber daya yang melibatkan parameter hotspot. Ini memastikan stabilitas sistem.

  1. Klik tab Hotspot Parameter Protection (RPC). Di tab Perlindungan Parameter Hotspot (RPC), klik Add Hotspot Parameter Protection (RPC) Rule.

  2. Di kotak dialog Add Hotspot Parameter Protection (RPC) Rule, konfigurasikan parameter.

    1. Di langkah Select Protection Scenario, konfigurasikan parameter Interface name dan klik Next.

    2. Di langkah Configure Protection Rule, konfigurasikan parameter dan klik Next.

      Parameter

      Deskripsi

      Parameter position Index

      Indeks parameter hotspot yang ditentukan selama pelacakan. Indeks ini sesuai dengan indeks parameter dalam SphU.entry(xxx,args). Sebagai contoh, jika Anda menentukan SphU.entry(resourceName,Entry Type.IN,1,paramA,paramB) selama pelacakan, indeks parameter paramA adalah 0 dan indeks parameter paramB adalah 1.

      Statistical dimension

      Dimensi berdasarkan mana statistik permintaan dikumpulkan. Nilai valid:

      • Number of requests: membatasi jumlah permintaan dalam periode waktu tertentu.

      • Concurrent number: membatasi jumlah maksimum permintaan yang dapat diproses secara bersamaan.

      Statistical cycle time

      Periode statistik. Satuan: detik. Sebagai contoh, jika periode statistik adalah 10 detik dan ambang batas queries per second (QPS) adalah 5, setiap parameter hotspot dapat diakses paling banyak lima kali dalam 10 detik.

      Single machine threshold

      Ambang batas QPS untuk setiap parameter hotspot.

      Flow control effect

      Mode di mana permintaan yang diblokir diproses. Anda dapat mengonfigurasi parameter ini jika Anda menetapkan parameter Statistical dimension ke Number of requests. Nilai valid:

      • Fast failure: Permintaan segera diblokir jika ambang batas QPS tercapai. Dalam mode ini, Anda dapat mengonfigurasi parameter Number of buffered requests, yang menentukan jumlah permintaan tambahan yang diizinkan untuk lonjakan lalu lintas.

      • Waiting in line: Dalam mode ini, sistem menempatkan permintaan dalam antrian dan memproses permintaan tersebut dengan kecepatan konstan. Mode ini biasanya digunakan dalam skenario seperti penggeseran beban puncak pada antrean pesan (MQ). Anda harus menentukan periode timeout. Durasi antrian yang diperkirakan dihitung saat sebuah permintaan dimasukkan ke dalam antrian. Jika durasi antrian yang diperkirakan melebihi periode timeout yang ditentukan, permintaan akan langsung ditolak. Sebagai contoh, jika parameter Single machine threshold diatur menjadi 5, sistem akan memproses satu permintaan setiap 200 milidetik dan menempatkan permintaan tambahan dalam antrian. Jika Anda mengatur periode Timeout menjadi 1.000 milidetik dan lebih dari lima permintaan berada dalam antrian, permintaan tambahan akan ditolak.

      Whether to open

      Jika Anda menggeser toggle ke posisi ON, aturan langsung berlaku setelah dibuat. Secara default, aturan dinonaktifkan.

    3. Pada langkah Configure Protection Behavior, pilih perilaku yang sesuai dan klik New.

Setelah aturan dibuat, Anda dapat mengedit atau menghapus aturan di tab Hotspot Parameter Protection (RPC).

Buat aturan throttling parameter hotspot untuk permintaan HTTP

Aturan perlindungan parameter hotspot (permintaan HTTP) dirancang untuk aplikasi yang menyediakan layanan web. Aturan ini memungkinkan kontrol lalu lintas bergranularitas halus berdasarkan parameter seperti IP, Host, Header, dan URL Param untuk memastikan stabilitas layanan dan sistem.

  1. Klik tab Hotspot Parameter Protection (HTTP Requests), lalu klik New Hotspot Parameter Protection (HTTP Requests).

  2. Di kotak dialog New Hotspot Parameter Protection (HTTP Requests), konfigurasikan parameter.

    1. Di langkah Select Protection Scenario, konfigurasikan parameter Interface name dan klik Next.

    2. Di langkah Configure Protection Rule, konfigurasikan parameter dan klik Next.

      Parameter

      Deskripsi

      Parameter Properties

      Parameter permintaan API tempat Anda ingin menerapkan aturan.

      • 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 aktual.

      • 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 dilakukan throttling.

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

      Threshold Type

      Jenis ambang batas. Nilai default: Number of requests.

      Threshold

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

      Sebagai contoh, jika ambang batas ditetapkan pada 10 permintaan per menit, sistem memproses maksimal 10 permintaan per menit.

      Whether to open

      Jika Anda menggeser toggle ke posisi ON, aturan langsung berlaku setelah dibuat. Secara default, aturan dinonaktifkan.

      Flow Control Method

      Klik Show Advanced Options.

      • Fast failure: Permintaan segera 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 akan dikembalikan.

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

        Catatan

        Jika Anda menetapkan parameter Efek Kontrol Aliran ke Menunggu dalam antrian, kami sarankan Anda menetapkan ambang batas QPS tidak lebih dari 1.000 permintaan per detik.

      Burst size

      Klik Show Advanced Options. Jika Anda menetapkan parameter Flow Control Method ke Fast failure, Anda dapat menentukan jumlah permintaan tambahan yang diizinkan untuk lonjakan lalu lintas.

      Timeout Period

      Klik Show Advanced Options. Jika Anda menetapkan parameter Flow Control Method ke Waiting in line, Anda harus menentukan periode timeout. Satuan: milidetik. Sebagai contoh, jika ambang batas QPS ditetapkan pada 5 permintaan per detik, sistem memproses permintaan setiap 200 milidetik dan mengantrekan permintaan berlebih. Periode timeout menunjukkan durasi antrian maksimum. Permintaan yang durasi antriannya melebihi periode timeout langsung ditolak.

    3. Di langkah Configure Protection Behavior, pilih perilaku terkait dan klik New.

Setelah aturan dibuat, Anda dapat mengedit atau menghapus aturan di tab Hotspot Parameter Protection (HTTP Requests).

Kelola perilaku

Perilaku web mendefinisikan perilaku kustom yang akan dilakukan setelah sumber daya instrumentasi tipe web memicu aturan tertentu. Sebagai contoh, pesan kesalahan "Diblokir oleh Sentinel" dikembalikan setelah antarmuka web memicu aturan throttling tertentu.

Buat perilaku

  1. Klik tab Behavior Management, lalu klik New behavior.

  2. Di kotak dialog New behavior, konfigurasikan parameter dan klik New.

    Sumber daya Web

    Parameter

    Deskripsi

    Contoh

    Behavior Name

    Nama perilaku. Panjang nama tidak boleh melebihi 128 karakter. Nama harus unik dalam aplikasi.

    Perilaku Uji

    Resource Type

    Pilih Web untuk parameter ini.

    Web

    Web Throttling Policy

    Perilaku yang akan dilakukan setelah antarmuka web memicu aturan tertentu. Secara default, Pengembalian Kustom dipilih. Anda perlu menyesuaikan lebih lanjut kode status respons HTTP dan format serta konten respons HTTP. Setelah antarmuka web memicu aturan tertentu, konten kustom dikembalikan.

    Pengembalian Kustom

    HTTP Status Code

    Nilai defaultnya adalah 429. Anda harus mengonfigurasi parameter ini jika parameter Strategi Pemrosesan Pembatasan Aliran Web diatur ke Pengembalian Kustom.

    429

    Returned Content-Type

    Format respons HTTP. Nilai valid: Plain text dan JSON.

    JSON

    Returned HTTP Text

    Konten respons HTTP yang akan dikembalikan setelah antarmuka web memicu aturan tertentu. Anda harus mengonfigurasi parameter ini jika parameter Strategi Pemrosesan Pembatasan Aliran Web diatur ke Pengembalian Kustom.

    {"message": "blocked oops"}

    Sumber daya RPC

    Parameter

    Deskripsi

    Contoh

    Behavior Name

    Nama perilaku. Panjang nama tidak boleh melebihi 128 karakter. Nama harus unik dalam aplikasi.

    Perilaku Uji

    Resource Type

    Pilih Rpc untuk parameter ini.

    Catatan

    Versi Apache Dubbo 2.7.0 hingga 2.7.3 tidak mendukung perilaku kustom. Pesan kesalahan java.lang.RuntimeException dikembalikan saat throttling dipicu di versi sebelumnya. Pesan kesalahan tersebut berisi SentinelBlockedException dan informasi throttling.

    Rpc

    Rpc current limiting processing strategy

    Perilaku yang akan dilakukan setelah antarmuka RPC memicu aturan tertentu.

    • Custom return: respons kustom. Anda perlu menyesuaikan kode status respons HTTP dan format serta konten respons HTTP. Setelah antarmuka RPC memicu aturan tertentu, konten kustom dikembalikan.

    • Custom exception: pengecualian kustom yang dikembalikan. Anda perlu menentukan parameter Nama Kelas Pengecualian dan Teks Pesan Pengecualian. Setelah antarmuka RPC memicu aturan tertentu, pengecualian kustom dikembalikan.

    Pengembalian Kustom atau Pengecualian Kustom

    Rpc current limiting processing strategy disetel ke Custom return

    Custom Response Class Name

    Path nama kelas.

    Catatan

    Respons kustom tidak mendukung tipe generik yang berisi tipe tidak dikenal, seperti Map<K, V> dan List<T>.

    com.alibaba.demo.OrderService:getOrder(long)

    Custom Response Content (JSON Format)

    Konten kustom yang dikembalikan setelah antarmuka RPC memicu aturan tertentu.

    {"id": "123", "name": "test"}

    Rpc current limiting processing strategy disetel ke Custom exception

    Exception Class Name

    Path nama kelas pengecualian.

    java.lang.RuntimeException

    Exception Message Text

    Teks pengecualian kustom yang dikembalikan setelah antarmuka RPC memicu aturan tertentu.

    "Operasi gagal"

Perilaku yang dibuat ditampilkan di tab Behavior Management. Anda dapat modify atau delete perilaku tersebut.

Mengaitkan perilaku dengan aturan

  1. Klik tab Traffic Protection lalu klik tab tempat aturan dikelola. Temukan aturan dan klik Edit di kolom Actions dari aturan tersebut. Selesaikan langkah Select Protection Scenario dan Configure Protection Rules, lalu pilih perilaku dari daftar drop-down Association Behavior di langkah Configure Protection Behavior. Anda juga dapat mengklik New behavior untuk membuat perilaku baru.

    Catatan
    • Jika Anda tidak perlu menyesuaikan perilaku fallback yang akan dilakukan setelah throttling, pilih Perilaku Default dan biarkan parameter Jenis API tidak ditentukan secara default.

    • Saat Anda menambahkan aturan throttling, jika antarmuka saat ini sudah terkait dengan perilaku, perilaku tersebut akan diganti oleh perilaku baru yang Anda kaitkan dengan antarmuka.

    • Jika Anda tidak menentukan parameter Jenis API di langkah Pilih Skenario Perlindungan, perilaku default akan dikaitkan. Setelah Anda menentukan parameter Jenis API dan mengaitkan perilaku tipe yang ditentukan, Anda tidak dapat mengubah tipe tersebut.

  2. Klik Save.

Skenario

Skenario 1: Implementasi penggeseran beban puncak untuk memproses permintaan dengan kecepatan konstan

Lalu lintas permintaan berfluktuasi selama jam sibuk dan jam sepi. Anda dapat menerapkan throttling untuk menunda lalu lintas puncak selama periode waktu tertentu, yaitu waktu antrian, untuk diproses. Ini memastikan bahwa semua permintaan dapat diproses tanpa memengaruhi pengalaman pengguna.

Di kotak dialog Add Throttling Protection Rule, buat aturan throttling menggunakan pengaturan parameter berikut:

  • Tetapkan parameter Stand-alone QPS threshold ke 5.

  • Atur parameter Flow control effect menjadi Waiting in line.

  • Tetapkan parameter Timeout ke 5.000 milidetik.

Sistem memproses permintaan setiap 200 milidetik, dan permintaan yang terakumulasi diatur dalam antrian. Jika permintaan diantrekan lebih dari 5.000 milidetik, permintaan gagal, dan informasi default seperti teks atau halaman statis yang ditampilkan karena throttling langsung dikembalikan.

Skenario 2: Memastikan sumber daya yang cukup

Jika waktu respons permintaan menjadi lebih lama, jumlah utas konkuren meningkat. Jika jumlah utas konkuren melebihi ambang batas, Layanan Ketersediaan Tinggi Aplikasi menolak permintaan berlebih hingga permintaan yang terakumulasi diproses dan jumlah utas konkuren berkurang. Dengan cara ini, pengecualian dapat diisolasi dan stabilitas dipastikan. Sebagai contoh, waktu eksekusi pernyataan SQL adalah 20 milidetik dan QPS yang diharapkan adalah 20.

Di kotak dialog Add Isolation Protection Rule, konfigurasikan parameter berikut:

  • Tetapkan parameter Interface name.

  • Tetapkan parameter Concurrency threshold ke 10.

Setelah konfigurasi selesai, jika terjadi deadlock atau masalah performa pada pernyataan SQL dan eksekusi pernyataan SQL lambat, hanya 10 utas yang digunakan, dan utas aktif proses tidak habis meskipun semakin banyak permintaan diterima dan permintaan tersebut tidak dapat diselesaikan dalam waktu singkat. Setelah pernyataan SQL kembali normal, jumlah utas konkuren berkurang. Ketika jumlah utas konkuren kurang dari ambang batas yang ditentukan, sistem tidak menolak permintaan, dan kemampuan pemrosesan aplikasi dipulihkan. Dengan cara ini, jumlah utas konkuren disesuaikan secara otomatis berdasarkan waktu respons permintaan, dan aplikasi yang tidak stabil diisolasi.

Skenario 3: Buat aturan pemutusan sirkuit untuk panggilan lambat

Sebagai contoh, jika Anda memanggil layanan pihak ketiga dan waktu responsnya lama, panggilan ke antarmuka saat ini terpengaruh. Untuk menyelesaikan masalah ini, Anda dapat melakukan pemutusan sirkuit pada panggilan lambat.

Di kotak dialog Add Circuit Breaking Rule, konfigurasikan parameter yang dijelaskan dalam tabel berikut.

Parameter

Contoh

Deskripsi

Interface name

test

Nama antarmuka tempat Anda ingin menerapkan aturan pemutusan sirkuit.

Statistical window duration

1

Durasi jendela waktu. Satuan: detik. Tetapkan parameter ini ke 1.

Minimum number of requests

10

Jumlah minimum permintaan untuk memicu pemutusan sirkuit. Tetapkan parameter ini ke 10.

Threshold Type

Rasio panggilan lambat (%)

Tetapkan parameter ini ke Rasio Panggilan Lambat (%).

Slow call RT

1000

Tetapkan parameter ini ke 1000. Satuan: milidetik. Jika waktu respons permintaan melebihi 1.000 milidetik, permintaan dihitung sebagai panggilan lambat.

Circuit Breaking Ratio Threshold

80%

Tetapkan parameter ini ke 80. Satuan: %. Jika persentase panggilan lambat mencapai 80%, pemutusan sirkuit dipicu.

Circuit Breaking Duration (s)

10

Tetapkan parameter ini ke 10 detik.

Circuit Breaking Policy

Pemulihan Deteksi Tunggal

Setelah periode pemutusan sirkuit berakhir, pemutus sirkuit mendeteksi permintaan berikutnya. Jika permintaan tersebut bukan panggilan lambat atau permintaan abnormal, pemutusan sirkuit berakhir. Jika tidak, pemutusan sirkuit dipicu lagi.

Skenario 4: Buat aturan pemutusan sirkuit untuk permintaan abnormal

Sebagai contoh, ketika konten layanan pihak ketiga ditampilkan, permintaan abnormal terjadi di sistem. Jika rasio permintaan abnormal tinggi, Anda dapat melakukan pemutusan sirkuit pada permintaan abnormal untuk memastikan pengalaman pengguna yang lebih baik.

Di kotak dialog Add Circuit Breaking Rule, konfigurasikan parameter yang dijelaskan dalam tabel berikut.

Parameter

Contoh

Deskripsi

Interface name

test

Nama antarmuka tempat Anda ingin menerapkan aturan pemutusan sirkuit.

Statistical window duration

1

Durasi jendela waktu. Satuan: detik. Tetapkan parameter ini ke 1.

Minimum number of requests

10

Jumlah minimum permintaan untuk memicu pemutusan sirkuit. Tetapkan parameter ini ke 10.

Threshold Type

Rasio Abnormal (%)

Tetapkan parameter ini ke Rasio Abnormal (%).

Circuit Breaking Ratio Threshold

80%

Tetapkan parameter ini ke 80. Satuan: %. Jika persentase permintaan abnormal mencapai 80%, pemutusan sirkuit dipicu.

Circuit Breaking Duration (s)

10

Tetapkan parameter ini ke 10 detik.

Circuit Breaking Policy

Pemulihan Deteksi Tunggal

Setelah periode pemutusan sirkuit berakhir, pemutus sirkuit mendeteksi permintaan berikutnya. Jika permintaan tersebut bukan panggilan lambat atau permintaan abnormal, pemutusan sirkuit berakhir. Jika tidak, pemutusan sirkuit dipicu lagi.

Skenario 5: Penjualan kilat produk populer

Dalam skenario seperti penjualan kilat, sistem mungkin gagal merespons segera atau bahkan berhenti merespons karena jumlah lalu lintas yang besar. Untuk memastikan stabilitas sistem, Anda dapat membuat aturan throttling parameter hotspot. Jika ambang batas yang ditentukan terlampaui, sistem mengantrekan permintaan berlebih untuk membeli produk populer. Sebagai contoh, jika jumlah permintaan untuk membeli produk melebihi 100 dalam 1 detik, sistem memproses 100 permintaan per detik dan mengantrekan permintaan berlebih.

Untuk membuat aturan throttling parameter hotspot untuk permintaan RPC, konfigurasikan informasi aturan berikut di kotak dialog Add Hotspot Parameter Protection (RPC) Rule:

  • Tetapkan parameter Interface name.

  • Tetapkan parameter Statistical dimension ke Number of requests.

  • Tetapkan parameter Statistical cycle time ke 1 detik dan parameter Single machine threshold ke 100.

  • Tetapkan parameter Flow control effect ke Waiting in line.

  • Tetapkan parameter Timeout ke 30 milidetik.

Setelah aturan dibuat, jika operasi API ini dipanggil lebih dari 100 kali dalam 1 detik, permintaan berlebih diantrekan. Jika permintaan diantrekan lebih dari 30 milidetik, permintaan langsung gagal.

Skenario 6: Permintaan sering yang menghabiskan banyak sumber daya sistem

Dalam skenario penjualan kilat, pelanggan mungkin perlu memodifikasi alamat pengiriman pesanan. Jika sejumlah besar permintaan untuk memodifikasi alamat pengiriman dikirim ke sistem, sejumlah besar sumber daya dikonsumsi untuk menulis data ke database. Dalam kasus ini, Anda dapat membuat permintaan berlebih yang melibatkan parameter hotspot langsung gagal.

Untuk membuat aturan throttling parameter hotspot untuk permintaan RPC, konfigurasikan informasi aturan berikut di kotak dialog Add Hotspot Parameter Protection (RPC) Rule:

  • Tetapkan parameter Interface name.

  • Tetapkan parameter Statistical dimension ke Concurrent number.

  • Tetapkan parameter Statistical cycle time ke 1 detik dan parameter Single machine threshold ke 100.

  • Tetapkan parameter Flow control effect ke Fast failure.

Setelah aturan dibuat, sistem dapat memproses hingga 100 permintaan per detik. Permintaan berlebih langsung gagal.

Skenario 7: Penjualan kilat produk populer

Dalam skenario seperti penjualan kilat, sistem mungkin gagal merespons segera atau bahkan berhenti merespons karena jumlah lalu lintas yang besar. Untuk memastikan stabilitas sistem, Anda dapat membuat aturan throttling parameter hotspot. 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 New Hotspot Parameter Protection (HTTP Requests). 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.

  • Tetapkan parameter Parameter Properties ke URL Parameter.

    Catatan

    Saat Anda 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 masukkan stockId di bidang Nama Parameter URL.

  • Masukkan stockId di bidang URL Parameter Name.

  • Tetapkan parameter Threshold ke 100 permintaan per second.

  • Tetapkan parameter Flow control effect ke Fast failure.

Skenario 8: Pencegahan penyikatan jahat

Sebagai contoh, jika sejumlah besar permintaan penyikatan jahat terjadi selama promosi, sejumlah besar inventaris produk atau sumber daya server akan terpakai. Dalam kasus 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 throttling parameter hotspot, konfigurasikan informasi aturan berikut di kotak dialog New Hotspot Parameter Protection (HTTP Requests). 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.

  • Tetapkan parameter Parameter Properties ke Client IP.

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

  • Tetapkan parameter Threshold ke 100 permintaan per second.

  • Tetapkan parameter Flow control effect ke Waiting in line.

  • Tetapkan parameter Timeout ke 30 milidetik.

  • Aktifkan Whether to open.