TGViewer
Software Philosophy Software Philosophy @softwarephilosophy · 3.48K subscribers
Post #2245 3.22K
استفاده از Rate Limiting که «یک باید» برای API می‌باشد!

تعریف Rate Limiting:
یک Rate Limiting تکنیکی است که کنترل می‌کند کاربر یا مشتری می‌تواند در یک دوره معین چند درخواست به یک API ارسال کند. برای مثال، ممکن است کاربر را به 100 درخواست در ساعت یا 10 درخواست در دقیقه محدود کنید. هدف ازRate Limiting جلوگیری از سوء استفاده، اضافه بار یا سوء استفاده از API شما است.

چرا باید از Rate Limiting در API خود استفاده کنید؟
-
بار روی سرور خود را کاهش دهید.
- صرفه جویی در پهنای باند و منابع.
- جلوگیری از استفاده ناعادلانه.

اصول پیاده سازی Rate Limiting

- استراتژی محدود کردن نرخ را انتخاب کنید: استراتژی Rate Limiting مناسب را بر اساس الزامات و محدودیت های API خود تعیین کنید.
- پیاده سازی Middleware: ایجاد میان افزار برای رهگیری درخواست‌های دریافتی و بررسی محدودیت‌های نرخ تعریف شده.
- ردیابی میزان مصرف: برای اعمال محدودیت‌های نرخ به طور موثر، سابقه استفاده را برای هر مشتری، چه در حافظه و چه با استفاده از یک ذخیره‌سازی دائمی داده، حفظ کنید.
- کنترل خطا: زمانی که مشتری از حد مجاز فراتر رفت، با یک کد وضعیت HTTP مناسب پاسخ دهید (مثلاً 429 درخواست خیلی زیاد) و اطلاعاتی را در مورد زمانی که مشتری می‌تواند درخواست‌های اضافی ارسال کند، درج کنید.

🔗 نسخه کامل مقاله را می‌توانید در اینجا مطالعه نمایید.

⁉️ برای بحث و تبادل نظر فنی در مورد این پست، نظرات خود را با ما در قسمت کامنت‌ها به اشتراک بگذارید.

#محمدرضا_پازوکی (لینکدین)

کانال تلگرام:
@SoftwarePhilosophy

______
DEV Community Rate Limiting: A Must-Have for Your API ⌛ If you are building or using an API, you might have heard of rate limiting. But what is it, and why...
  • 👍 29
  • ❤ 5
More from @softwarephilosophy
  1. Sep 27, 2026نگو JEV بگو System One! دنیل کانمن (Daniel Kahneman) توی کتاب معروفش «تفکر، سریع و کند» (T…
  2. Sep 23, 2026بازنویسی کل GitHub Copilot Runtime با Rust 🔶 حدود ۱۲۰،۰۰۰ دلار هزینه توکن و سه هفته وقت ی…
  3. Sep 15, 2026ورک‌شاپ «AI Agents in C# (MAF)» در این ورک‌شاپ به بررسی امکانات جدید برنامه‌نویسی با کتابخ…
  4. Sep 12, 2026کد مدریت شده (Managed Code) در دات‌نت یعنی چی؟ ▫️به زبان ساده: کد مدریت شده (Managed Code)…
  5. Sep 5, 2026آشنایی با Attributeها در سی‌شارپ در سی شارپ، Attributeها برای اضافه کردن metadata یا اطلاع…
  6. Aug 25, 2026اگر در دات نت Agent، MCP Server یا ابزارهای مبتنی بر هوش مصنوعی توسعه میدهی، این پروژه میت…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →