Bagikan melalui


Apa itu pembatasan tarif?

Pembatasan tarif adalah mekanisme kontrol yang digunakan API cloud untuk mengatur jumlah permintaan yang dapat dibuat pengguna dalam waktu tertentu. Produsen CLOUD API menggunakan pembatasan laju untuk memastikan bahwa alur permintaan tidak membanyangi layanan. Pembatasan tarif menetapkan batas pada kecepatan dan volume panggilan API. Batas tarif biasanya ditentukan dalam hal permintaan per periode waktu.

Mengapa API cloud menggunakan pembatasan laju

  • Cegah kelebihan beban. Pembatasan tarif memastikan bahwa server API tetap stabil dan responsif dengan mencegah satu pengguna atau layanan membanjirinya dengan terlalu banyak permintaan.
  • Pastikan penggunaan yang adil. Pembatasan tarif memberlakukan kebijakan penggunaan yang adil dengan memastikan bahwa tidak ada satu pengguna yang memonopoli sumber daya API. Pembatasan tarif memungkinkan akses yang setara ke semua pengguna.
  • Tingkatkan keamanan. Pembatasan tarif membantu dalam mengurangi serangan Penolakan Layanan Terdistribusi dan perilaku kasar lainnya dengan membatasi jumlah permintaan dari sumber yang berpotensi berbahaya.
  • Mengelola biaya. Untuk penyedia layanan cloud, pembatasan tarif membantu dalam mengelola biaya operasional dengan mencegah penggunaan sumber daya yang tidak dapat diprediksi atau berlebihan.
  • Menjaga kualitas layanan. Pembatasan tarif memastikan kualitas layanan yang konsisten untuk semua pengguna dengan mencegah lonjakan lalu lintas.

Bagaimana Anda mengalami pembatasan tarif di aplikasi Anda

Saat Anda membuat aplikasi yang mengintegrasikan API cloud, periksa dokumentasinya untuk memverifikasi apakah mereka mendukung pembatasan tarif. Jika mereka melakukannya, Anda menerima RateLimit-... atau X-RateLimit-... header respons dengan informasi tentang batas kecepatan. Anda dapat menggunakan informasi ini dalam aplikasi untuk memastikan bahwa Anda tidak melebihi batas tarif API. Misalnya, RateLimit-Remaining header menunjukkan jumlah permintaan yang tersisa di jendela saat ini. Jika Anda menerima respons dengan header ini diatur ke 0, Anda tahu bahwa Anda mencapai batas tarif dan harus menunggu jendela berikutnya sebelum Anda mengirim permintaan lain. Header RateLimit-Reset menunjukkan waktu saat batas laju direset. Beberapa API mengirim RateLimit-... header hanya setelah Anda mencapai ambang batas. Contohnya adalah ketika Anda memiliki 10 permintaan% yang masih tersisa.

Ketika Anda melebihi batas tarif, API membatasi permintaan Anda dan mengembalikan kode status HTTP 429 Too Many Requests . Beberapa API mungkin juga mengirim Retry-After header untuk menunjukkan berapa lama Anda harus menunggu sebelum mengirim permintaan lain.

Untuk menghindari pembatasan dan memastikan bahwa aplikasi Anda tetap responsif, terapkan pembatasan tarif dalam aplikasi Anda. Bergantung pada stack teknologi Anda, berbagai pustaka dapat membantu Anda menangani pembatasan laju dalam aplikasi Anda. Setelah Anda menerapkan pembatasan tarif dalam aplikasi Anda, uji untuk melihat apakah pembatasan laju ditangani dengan benar.

Langkah selanjutnya