ما زمانی که api می نویسیم جندین درخواست(request) می فرستیم به سرور اینجوری حجم درخواستها بالا میره و امکان داره سرور هنگ کنه چیکار کنیم این درخواست ها کم بشه
در زبان یا فریم ورکی که api خود را برنامه نویسی کرده اید، بایستی از کتابخانه های rate limit به صورت middle ware و ... استفاده کنید تا یک کاربر بیش از حد درخواست ارسال نکند.
برای مثال در فریم ورک لاراول این کتابخانه وجود دارد:
https://github.com/GrahamCampbell/Laravel-Throttle
یا در Node.js و express:
https://www.npmjs.com/package/express-rate-limit
سلام
@netwons
بستگی به تعداد درخواست
منابع سرور و کانفیگ سرور داره
در حد میلیونی باشه درخواست و منابع سرور کم باشه ، بله افت پردازش و هنگی هست
شاید پاسخ شما همینجا باشد
این نمونه کدی که آقای صفدری گذاشتن بهترین کار هست که می تونید انجام بدید،
خیلی هم راحته فقط باید توی Route ها Middleware رو فراخوانی کنید.
این دوتا عدد روبه روی throttle هم قابل تغییر هستن
عدد اول تعداد مجاز درخواست هست
عدد دوم برحسب دقیقه نوشته میشه
در کد بالا مشخص کرده که 60 درخواست در یک دقیقه می تونه کاربر درخواست کنه
خوب حساب کنیم ما ۱۰۰۰ کاربر هم زمان در سایت ما هر کدوم یک درخواست میفرسته در کل میشه ۱۰۰۰ requestدر یک ثانیه می دونید چه حجمی از سی پی یو درگیر میشه من میخوام این رو کنترل کنم آیا روشی هست برای بهینه کردن یا ساپورت کردن ۱۰۰۰ نفر در یک ثانیه؟
منظورم اینکه این درخواستها رو میشه بریزیم توی رم تا طرف اول بیاد توی رم اگر ان درخواست در رم بود از رم بخونه در غیر این صورت بره از دیتابیس بخونه فکر کنم اینجوری سی پی یو سرور درگیر نمیشه
بزار یک مثال قابل فهم بزنم من یک فایل تکس دارم داخل این فایل ۲۰۰ تا اسم سایت وجود دارهحالا من برنامه نوشتم که بره برای من اطلاعات whoisاین سایتها رو دربیاره و به من نمایش بده اینجا باعث میشه سیستم کرش کنه یا cpuبیشتر درگیر بشه و کارایی سیستم بیاد پایین.بجز از محدود کردن کاربر به تعداد درخواستها آیا راهی وجود داره برای حل این مشکل