Merhaba
Bir pazar yerine api bağlantısı yaptığım bir laravel servisim var bu serviste attığım istekleri limitlemeliyim
Örneğin
-Dakikada 1000 post isteği atabilirim
-Dakikada 2000 get isteği atabilirim gibi.
Nasıl bir yöntem izlemem konusunda emin olamadım. Şuan işimi görebilecek şekilde cache ile çözüyorum. Basit bir counter oluşturdum fakat pek içime sinmedi böyle bir yapıyı daha etkin ve esnek olarak nasıl yapabilirim fikir verebilirseniz sevinirim.
Token bucket algoritması ile yapılsa nasıl olur ?
Tüm alternatiflere açığım fikir beyan eden herkese şimdiden teşekkürler.
http isteklerini limitlemek
5
●118
- 12-10-2023, 20:00:34
- 12-10-2023, 20:05:47Profilinizdeki numaraya yazdım hocamkoksalkesici adlı üyeden alıntı: mesajı görüntüle
- 12-10-2023, 20:07:53imzadan ulaşırsanız yardımcı olabilirim.ibrahimyakutt adlı üyeden alıntı: mesajı görüntüle
- 12-10-2023, 22:52:39Rotaya yapılan istekleri engellemek isterseniz zaten laravel bunu sağlıyor
Detaylı bakmak isterseniz rate limit diye aratın
Örnek olması adına bir kod paylaşıyorum;
Route::controller('BrandController')->middleware('throttle:100,1')->prefix('brands')->name('brands.')->group(function () { Route::get('/', 'index')->name('index'); Route::get('/{slug}', 'show')->name('show'); });bu kodda bakmanız gereken kısım middleware.
throttle:100,1 - burada 1 süremizi belirtiyor ve dakika cinsinden tanımlama yapıyoruz 100 ise 1 dakikada kaç istek atılabileceğini söylüyor - 12-10-2023, 23:12:41dinarbey adlı üyeden alıntı: mesajı görüntüle
Rotaya yapılan istekler değil hocam rate limiter kullanıyorum rotalar için botlarım ve cronlarımında kullandığı benim istek attığım dış api için.