الگوریتم سطل توکن برای محدود کردن نرخ API در NodeJS: یک راهنمای ساده

در این مقاله سعی خواهیم کرد به بررسی این موضوع بپردازیم سطل توکن الگوریتم و پیاده سازی آن در NodeJS برای API Rate Limiting به عبارت بسیار ساده

سطل توکن چیست؟

سطل توکن الگوریتمی است که برای محدود کردن منابع یا استفاده از سرور استفاده می شود. این الگوریتمی است که در آن تعداد محدودی توکن در سرور خود داریم و هر زمان که درخواستی انجام شود، از یک نشانه برای انجام کامل آن درخواست استفاده می شود. زمانی که درخواست هایی برای بیش از تعداد توکن ها وجود داشته باشد، سرور تمام درخواست ها را رد می کند یا منتظر می ماند تا توکن ها دوباره پر شوند.

توکن ها را می توان به روش های مختلفی پر کرد. دو مورد از آنها به شرح زیر است:

  • هر زمان که درخواستی انجام شود، رمز استفاده شده توسط کاربر به سرور بازگردانده می شود.
  • پر کردن مجدد توکن ها پس از یک بازه زمانی مشخص.

پیاده سازی Token Bucket

  1. یک پروژه npm جدید راه اندازی کنید و “type” را تنظیم کنید: “module”.

    کپی 🀄

      npm init -y
    
    

  2. Express را نصب کنید.

    کپی 🀄

      npm i express
    
    
  3. یک فایل جدید ایجاد کنید، نام آن را هر چیزی بگذارید، فرض کنید “index.js”. یک کد اصلی سرور اکسپرس در آن بنویسید.

    کپی 🀄

      import express from 'express';
      const app = express();
    
      app.get('/',(req,res) = {
          res.send('Hello There !!');
      })
    
      const PORT = process.env.PORT || 8000;
      app.listen(PORT,() = {
          console.log(`Server is running on PORT : ${PORT}`);
      })
    
    

    اکنون…

Source link