آشنایی با Rate Limiting
این مسئله وجود داره که یه سری کاربر یا سرویس، منابع سیستم رو به خودشون اختصاص میدن و بقیه کاربرها نمیتونن درست از سرویس استفاده کنن. مثلا یه API داریم که یهو یه کاربر شروع میکنه به ارسال درخواستهای زیاد و کل سیستم رو کند میکنه. یا بدتر از اون، ممکنه با DoS attack روبرو بشیم که عملا سرویسمون رو از دسترس خارج کنه.
یکی از راهحلها میتونه Rate Limiting باشه. با استفاده از الگوریتمهایی مثل Token Bucket یا Sliding Window میتونیم تعداد درخواستها رو محدود و کنترل کنیم. مثلا میتونیم بگیم هر کاربر در هر دقیقه فقط ۱۰۰ تا درخواست میتونه بفرسته. یا میتونیم برای هر endpoint مشخص کنیم چقدر traffic قبول میکنه. اینجوری هم جلوی سوءاستفاده رو میگیریم، هم تجربه کاربری بهتر میشه و هم هزینههای سرور رو میتونیم کنترل کنیم.
لینک مقاله:
https://www.solo.io/topics/rate-limiting
#system_design
@techstuff100
Post #67
462

- 👍 4
- 👏 1