Site yavaş; sorunun TR7'de mi, backend'de mi olduğunu nasıl anlarım?
Kısa cevap
Yavaşlığı süre bileşenlerine ayırarak. Debug Mode Logs'ta bir isteğin Request ve Response sekmelerindeki Performance Info tabloları süreyi aşamalara ayırır: Tr yüksekse kaynak Kurum Servisi, Tw yüksekse TR7'deki kuyruk ya da limitler, Tc yüksekse Kurum Servisine bağlantının kurulmasıdır. Anlık durum Live Stats'ta (Avg. Response Time, Wait/Connect, Queued requests), geçmiş eğilim Dashboard'da izlenir; son adımda aynı istek TR7'yi atlayarak doğrudan Kurum Servisine gönderilip süreler karşılaştırılır.
Sorun: Yavaşlığın Kaynağı Belli Değil
Kullanıcılar sitenin yavaş olduğunu bildirdiğinde sorun istemci ağında, TR7'de (kuyruk, limit, WAF, kaynak kısıtı) ya da Kurum Servisinde olabilir. Doğru ekibin sorunu ele alması için gecikmenin hangi aşamada oluştuğunun ayrılması gerekir.
Çözüm: Dört Yöntem
| Durumunuz | Uygun yöntem |
|---|---|
| Anlık tablo | Yöntem 1: Live Stats |
| Geçmiş eğilim ve karşılaştırma | Yöntem 2: Dashboard |
| Tek bir isteğin süre dökümü | Yöntem 3: Debug Logs → Performance Info |
| Kesin ayrım | Yöntem 4: TR7'yi aradan çıkarıp ölçmek |
Yöntem 1: Live Stats Önerilen
- Nasıl çalışır vService'in ve Kurum Servislerinin anlık süre ve kuyruk değerleri kartlarda görülür.
- Nerede açılır Left Monitor Panel → vService → Live Stats
- Gereksinim HTTP ya da L7 TCP vService
- vService tipi HTTP · L7 TCP
Adım adım yapılandırma
Left Monitor Panel'de vService'e tıklanır ve Live Stats sekmesi açılır.
Frontend bölümünde Avg. response time Kurum Servislerinin ortalama yanıt süresini, Backend Services bölümündeki Wait/Connect kartı kuyruk bekleme (Queue wait) ve bağlantı kurma (Connect) süresini, Queued requests bekleyen istekleri, CPU ve Memory usage vService'in kendi yükünü gösterir. Backend Services tablosunda Kurum Servisi başına yanıt süresi ve 5xx oranı görülür.
Doğrulama
Avg. Response Time yüksek, Queued requests 0 ise Kurum Servisi; Queued requests sürekli 0'dan büyükse kapasite ya da limit.
Yavaşlığın tarafıYöntem 2: Dashboard
- Nasıl çalışır Grafikler yavaşlığın ne zaman başladığını ve hangi bileşende arttığını gösterir.
- Nerede açılır Left Monitor Panel → vService → Dashboard
- Gereksinim HTTP ya da L7 TCP vService
- vService tipi HTTP · L7 TCP
Adım adım yapılandırma
vService'in Dashboard sekmesi açılır.
Backend sekmesinde Backend Response Time Distribution, Backend Connect Time Distribution ve Backend Queue Distribution; System sekmesinde vService CPU ve bellek kullanımı; Frontend Bandwidth grafiğinde düz bir tavan (bant sınırı) incelenir.
Doğrulama
Artışın hangi grafikte başladığı belirlenir.
Yanıt, bağlantı, kuyruk ya da sistemYöntem 3: Debug Logs → Performance Info
- Nasıl çalışır Tek bir isteğin toplam süresi TR7'nin ölçtüğü parçalara ayrılır.
- Nerede açılır vService → Logs & Tracking → Debug Mode Logs
- Gereksinim HTTP vService
- vService tipi HTTP
Adım adım yapılandırma
Load Balancer → Load Balancer vService List ekranında HTTP vService seçilip Edit tıklanır.
Status alanında Debug Mode seçilir ya da Details panelinde Debug kutusu işaretlenir; yükü sınırlamak için koşullu debug ile yalnızca belirli IP ya da yollar seçilebilir (Debug logları nasıl aktif edilir).
Save tıklanır.
Logs & Tracking sekmesinde log kaynağı olarak Debug Mode Logs seçilir ve yavaş isteğin kaydı açılır; Request sekmesindeki Performance Info tablosunda Tc (Kurum Servisine bağlantı kurma süresi) ve Tr (Kurum Servisinin yanıt başlıklarını gönderme süresi), Response sekmesindeki tabloda Tw (kuyrukta bekleme süresi) okunur; değerler milisaniyedir. Termination State ve Retries değerlerine de bakılır.
İnceleme bitince Debug Mode kapatılır.
Doğrulama
Tr baskın: Kurum Servisi · Tw: kuyruk/limit · Tc: Kurum Servisine bağlantı.
Baskın bileşenYöntem 4: TR7'yi Aradan Çıkarıp Ölçmek
- Nasıl çalışır Aynı istek önce TR7 üzerinden, sonra doğrudan Kurum Servisine gönderilir; iki ölçümün farkı TR7 ve ağ katkısını gösterir.
- Nerede açılır İstemci ya da TR7 ile aynı ağdaki bir makine
- Gereksinim Kurum Servisine doğrudan erişim
- vService tipi HTTP · L7 TCP
Adım adım yapılandırma
curl -o /dev/null -s -w 'connect=%{time_connect} tls=%{time_appconnect} ttfb=%{time_starttransfer} total=%{time_total}\n' ile önce vService adresine, sonra Kurum Servisi sunucusunun kendi adresine istek gönderilir.
Doğrudan ölçüm de yavaşsa kaynak Kurum Servisidir; yalnızca TR7 üzerinden yavaşsa vService Limits, QOS, Bandwidth, Cache ve Compression ayarları kontrol edilir.
Doğrulama
İki ölçümün ilk bayt süreleri karşılaştırılır.
Fark küçükse Kurum ServisiSık Yapılan Hatalar
- HTTP Logs'ta süre aramak. İstek başına süre dökümü Debug Mode Logs'ta görülür.
- Debug Mode'u açık unutmak. Debug yüksek log ve işlemci yükü üretir; koşulla sınırlanır ve iş bitince kapatılır.
- Ortalamaya bakıp tek sunucuyu kaçırmak. Live Stats'taki Backend Services tablosunda bir Kurum Servisinin süresi diğerlerinden ayrışıyorsa sorun o sunucudadır.
- Kuyruğu gözden kaçırmak. Queued requests sürekli artıyorsa: Kuyruk (queue) nasıl çalışır; istekler en fazla ne kadar bekler?
Dokümantasyonda nasıl yapılır
