Frontend Number of HTTP Requests /s
Frontend Number of HTTP Requests /s Koşulu Nedir?
Frontend Number of HTTP Requests /s koşulu, vService'e (frontend) saniyede gelen HTTP istek sayısını değerlendirerek trafik yönlendirme ve manipülasyon kararları almak için kullanılan bir koşul tipidir.
Bu koşul sayesinde HTTP trafik yoğunluğuna göre dinamik kararlar alınabilir.
Frontend Number of HTTP Requests /s Koşulunun Önemi
HTTP istek hızı, web uygulamalarının maruz kaldığı yükü en doğru şekilde gösteren metriktir.
Frontend Number of HTTP Requests /s koşulu sayesinde;
- HTTP flood saldırıları tespit edilebilir,
- API endpoint'lerine dinamik rate limiting uygulanabilir,
- Yoğun saatlerde farklı cache politikaları uygulanabilir,
- Bot trafiği tespit edilip engellenebilir,
- Uygulama performansı optimize edilebilir.
Benzer Koşulların Karşılaştırması:
| Metrik | Kontrol Edilen Bilgi | Kullanım |
|---|---|---|
| Frontend Number of HTTP Requests /s | Saniyede HTTP istek | HTTP trafik yoğunluğu |
| Frontend Connection | Toplam aktif bağlantı | Anlık yük |
| Frontend Number of New Sessions /s | Saniyede yeni oturum | Trafik akış hızı |
TIP
Keep-Alive Etkisi
HTTP/1.1 keep-alive ve HTTP/2 multiplexing ile tek bir TCP bağlantısında birçok HTTP isteği gönderilebilir. Bu nedenle HTTP istek hızı genellikle oturum hızından yüksektir.
Kullanılabildiği vService Tipleri
Koşul yalnızca istek (At Request) aşamasında kullanılabilir. Hız, ilgili vService'in saniyelik HTTP istek sayısı olarak motorun dahili sayacından okunur; TR7 tarafında ayarlanabilir bir ölçüm penceresi yoktur.
Nasıl Eklenir?
Yeni bir Frontend Number of HTTP Requests /s Koşulu, TR7 web yönetim arayüzü üzerinden aşağıdaki adımlar izlenerek eklenebilir:
- Sol altta bulunan TR7 logosuna tıklanarak Configuration Menu açılır.
- Load Balancer → Conditions → Add adımları takip edilir.
- Criteria olarak Frontend number of HTTP requests/s seçilir.
- Koşula ait ilgili konfigürasyonlar yapılandırılır.
Addbutonuna tıklanarak koşul eklenir.
Frontend Number of HTTP Requests /s Koşulu Ekleme Formu
Frontend Number of HTTP Requests /s Koşulu Ekleme Formu
INFO
Condition Name
Oluşturulacak koşul için isteğe bağlı bir isim girilebilir.
Bu alan, özellikle aşağıdaki senaryolarda önemlidir:
- Aynı vService altında çok sayıda koşul tanımlandığında,
- Benzer kriterlere sahip koşulların ayırt edilmesi gerektiğinde,
- Koşulun hangi iş kuralını temsil ettiğinin hızlıca anlaşılması istendiğinde.
Bu alan boş bırakıldığında, TR7 ilgili koşulun içeriğini analiz ederek Condition Description alanında otomatik ve açıklayıcı bir isim oluşturur. Oluşturulan bu açıklama, koşul listelerinde isim olarak kullanılır.
INFO
Criteria Zorunlu
Koşulun tipini belirleyen alandır; aranabilir açılır listeden Frontend number of HTTP requests/s seçilir. Bu seçim, formda görüntülenecek alanları belirler. Kriter, koşul kaydedildikten sonra değiştirilemez: farklı bir kritere ihtiyaç duyulursa yeni bir koşul tanımlanır. Listedeki tüm kriterler ve kapsamları için Conditions sayfasındaki kriter kataloğuna bakılabilir.
INFO
Operator
Sayısal karşılaştırma operatörü ve değeri girilir. Form, operatörü Equals to (=) seçili ve değeri boş olarak açılır; girilen değer tamsayı olmalıdır.
| Operatör | Sembol | Açıklama |
|---|---|---|
| Less than | < | Değer küçük olmalı |
| Equals to | = | Değer tam olarak eşleşmeli |
| Greater than | > | Değer büyük olmalı |
| Range | - | Değer iki değer arasında olmalı; seçildiğinde ikinci bir değer alanı açılır; iki sınır da aralığa dahildir |
TIP
Anlık istek hızı, aksiyonlarda Saniyelik istek ortalaması akıllı değişkeniyle kullanılabilir (ör. bir HTTP başlığının veya log alanının değeri olarak).
WARNING
Normal istek hızı, uygulama tipine göre değişir:
- Statik Site: 50-200 req/s
- Web Uygulaması: 100-500 req/s
- API Servisi: 500-5000 req/s
INFO
Condition Description
Girilen kriter ve değerler doğrultusunda TR7 tarafından otomatik olarak oluşturulur.
Bu açıklama;
- Koşulun hangi değer için geçerli olduğunu,
- Hangi kriter üzerinden çalıştığını,
- Listeleme ekranlarında koşulun hızlıca anlaşılmasını
sağlayacak şekilde sistem tarafından dinamik olarak üretilir.
INFO
Form Butonları
Add
Add butonuna tıklanarak koşul ekleme işlemi tamamlanır.
Add & Repeat
Add & Repeat butonu ile koşul ekleme işlemi tamamlanır ve farklı konfigürasyonlarla ilgili pencereden çıkılmadan yeni bir koşul daha eklenebilir.
Koşul Eklendi
Operasyonel Kullanım Önerileri
- HTTP Flood Koruması. Anormal yüksek HTTP istek hızı, Layer 7 DDoS saldırısının göstergesidir.
- API Rate Limiting. API endpoint'leri için istek hızına göre dinamik rate limiting uygulayın.
- Bot Trafiği Tespiti. Normal kullanıcıların üretemeyeceği yüksek istek hızları bot trafiğini gösterebilir.
- Path ile Kombinasyon. Belirli endpoint'ler için (örn.
/api/login) istek hızı kontrolü yapın.
Canlı Ortamlarda Yaygın Kullanım Senaryoları
Aşağıdaki örnekler, ilgili koşulun gerçek sistemlerde en sık karşılaşılan kullanım senaryolarında nasıl uygulandığını göstermektedir. Bu senaryolar, canlı ortamlarda yaygın olarak tercih edilen ve sahada edinilmiş deneyimlere dayanan pratikleri temel alır.
Senaryo 1: HTTP Flood (Layer 7 DDoS) Saldırı Tespiti
Kullanım Amacı: vService'e saniyede anormal yüksek sayıda HTTP isteği geldiğinde Layer 7 DDoS saldırısını tespit edip otomatik koruma önlemleri almak ve sistemi ayakta tutmak.
Konfigürasyon: Operator → Greater than (>) 5000
Aksiyon Önerileri:
- ✅ Block → 5000 req/s üzerinde trafik engellenir; yanıt kodu olarak 429 Too Many Requests seçilebilir (varsayılan 403 Forbidden). HTTP flood saldırısı durdurulur.
Senaryo 2: API Endpoint Aşırı Kullanım Koruması
Kullanım Amacı: API endpoint'lerine gelen istek hızını kontrol ederek aşırı kullanımı engellemek ve API servisinin sağlıklı çalışmasını korumak.
Konfigürasyon: Operator → Range (-) 1500-5000
Aksiyon Önerileri:
- ✅ Bandwidth Limitation → Aşırı kullanım bandında API istekleri için bant genişliği sınırlaması uygulanır, throttling sağlanır (Path koşulu ile birlikte:
/api/*); bandın üzerine çıkan trafik ise Senaryo 1'deki engellemeye takılır. - ✅ Add HTTP Header →
X-RateLimit-Warning: truebaşlığı eklenir, API istemcileri yavaşlamaları için uyarılır.
Senaryo 3: Sakin Dönemde Arka Plan Trafiğine İzin
Kullanım Amacı: İstek hızı düşükken (gece saatleri, yoğunluk dışı dönemler) crawler, rapor ve toplu işlem (batch) trafiğine izin verildiğini işaretlemek; yoğunluk arttığında bu trafiğin kısıtlanabilmesini sağlamak.
Konfigürasyon: Operator → Less than (<) 500
Aksiyon Önerileri:
- ✅ Add HTTP Header →
X-Offpeak: truebaşlığı eklenir; Kurum Servisi, arka plan isteklerini bu işarete göre işler. - ✅ Advanced Traffic Inspection → Sakin dönem trafik profili ve arka plan görev dağılımı raporlanır.
