Middle
Rate limiting nədir və onu necə həyata keçirmək olar?
sobes.tech Süni İntellekt
AI-dan cavab
Rate limiting — bu mexanizm, hansı ki, müştərinin müəyyən zaman intervalında serverə göndərə biləcəyi sorğuların sayını məhdudlaşdırır. Bu, serveri yüklənmələr və sui-istifadələrdən qorumağa kömək edir.
Tətbiq server və ya müştəri tərəfində ola bilər. Ön tərəfdə, adətən, sadə qoruma tətbiq olunur, məsələn, təkrarlanan klikləri bloklamaq və ya API çağırışlarının tezliyini məhdudlaşdırmaq.
JavaScript-də zamanlayıcı istifadə edərək sadə tətbiq nümunəsi:
let lastRequestTime = 0;
const RATE_LIMIT_INTERVAL = 1000; // 1 saniyə
function sendRequest() {
const now = Date.now();
if (now - lastRequestTime < RATE_LIMIT_INTERVAL) {
console.log('Çox tez! Bir az gözləyin.');
return;
}
lastRequestTime = now;
// sorğunu göndəririk
fetch('/api/data')
.then(response => response.json())
.then(data => console.log(data));
}
Daha mürəkkəb hallarda, kitabxanalar istifadə olunur və ya serverdə Redis, tokenlər və ya sayğaclar vasitəsilə rate limiting həyata keçirilir.