Kebijakan Kuota dan SpikeArrest — bertanya-tanya mana yang akan digunakan
paling sesuai dengan kebutuhan pembatasan kapasitas Anda? Lihat diagram perbandingan di bawah ini.
Kuota
SpikeArrest
Gunakan untuk:
Batasi jumlah koneksi yang dapat dibuat aplikasi ke backend target proxy API Anda melalui
periode waktu tertentu.
Lindungi backend target proxy API Anda dari lonjakan traffic yang parah dan penolakan
serangan layanan.
Jangan gunakan untuk:
Jangan menggunakannya untuk melindungi backend target proxy API Anda dari lonjakan traffic.
Untuk itu, gunakan kebijakan SpikeArrest.
Jangan menggunakannya untuk menghitung dan membatasi jumlah koneksi yang dapat dibuat aplikasi ke API Anda
backend target proxy selama jangka waktu tertentu.
Untuk melakukannya, gunakan kebijakan Quota.
Menyimpan hitungan?
Ya
Tidak
Praktik terbaik untuk melampirkan kebijakan:
Lampirkan ke PreFlow Permintaan ProxyEndpoint, umumnya setelah
otentikasi pengguna.
Tindakan ini memungkinkan kebijakan memeriksa penghitung kuota di titik entri API Anda
{i>proxy<i}.
Lampirkan ke ProxyEndpoint Request PreFlow, umumnya dengan
awal alur.
Hal ini memberikan perlindungan lonjakan pada titik entri proxy API Anda.
Kode status HTTP saat batas telah tercapai:
500 (Error Server Internal) *
500 (Error Server Internal) *
Sebaiknya Anda tahu:
Penghitung kuota disimpan di Cassandra.
Mengonfigurasi kebijakan untuk menyinkronkan penghitung secara asinkron guna menyimpan
Google Cloud Platform.
Sinkronisasi penghitung asinkron dapat menyebabkan penundaan pada pembatasan kapasitas
yang memungkinkan panggilan sedikit melebihi batas yang telah ditetapkan.
Melakukan throttling berdasarkan waktu saat traffic terakhir diterima. Ini
disimpan per pemroses pesan.
Jika Anda menentukan batas kapasitas 100 panggilan per detik, hanya 1 panggilan setiap 1/100 detik
(10 md) akan diizinkan di pemroses pesan. Panggilan kedua dalam waktu 10 md akan
ditolak.
Bahkan dengan batas kapasitas per detik yang tinggi, permintaan yang hampir bersamaan dapat mengakibatkan
penolakan.
* Untuk kebijakan Kuota dan kebijakan SpikeArrest,
kode status HTTP {i>default<i} untuk melebihi
batas kapasitas adalah jenis
500 Internal Server Error.
Anda dapat mengubah kode status
untuk kebijakan tersebut menjadi
429 Service Unavailable dengan menambahkan
properti tingkat organisasi (features.isHTTPStatusTooManyRequestEnabled).
Jika Anda pelanggan Cloud, hubungi Dukungan Apigee Edge untuk mengaktifkan properti.