Yükleniyor...
Ortalama gecikme süreleri production sistemlerde çoğu zaman yanıltıcıdır. Bu yazıda p95 ve p99 latency metriklerinin neden gerçek kullanıcı deneyimini ve operasyonel riskleri daha doğru yansıttığını ele alıyoruz.

Bir API’nin ortalama yanıt süresinin düşük olması çoğu zaman “her şey yolunda” algısı yaratır. Dashboard’ta ortalama latency yeşil görünür, SLA’ler kağıt üzerinde sağlanır ve sistem sağlıklı kabul edilir. Ancak production ortamlarında yaşanan problemler neredeyse hiçbir zaman “ortalama kullanıcı” üzerinden ortaya çıkmaz.
Gerçek sorunlar her zaman uçlarda yaşanır.
Bu nedenle yüksek hacimli ve kritik sistemlerde performansı anlamak için ortalama (mean) yerine percentile latency kavramlarına bakmak gerekir. Özellikle p95 ve p99, sistemin gerçek davranışını anlamak için en kritik iki metriktir.
p95, isteklerin %95’inin bu sürenin altında tamamlandığını; p99 ise %99’unun bu sınırın altında kaldığını ifade eder. Yani p99, sistemin “en kötü ama hala kabul edilen” davranışını temsil eder.
Production’da kullanıcı şikayetleri, timeout’lar ve zincirleme hatalar tam olarak bu %1–5’lik dilimde ortaya çıkar.
Ortalama değerler uç değerleri maskeler. Bir API’nin 100 isteğinden 99’u 50 ms’de, 1’i 5 saniyede dönüyorsa:
Bu senaryoda ortalama latency oldukça iyi görünürken p99 değeri 5 saniyeye fırlar. İşte bu fark, production sistemlerinde “dashboard yeşildi ama müşteri arıyor” anlarının temel sebebidir.
Özellikle API gateway, IAM, payment, scoring veya entegrasyon katmanlarında bu etki katlanarak büyür. Çünkü tek bir yavaş istek downstream sistemleri de bloke eder.
p95 genellikle sistemin genel sağlığını ölçmek için kullanılır. Çoğu kullanıcı için deneyimin ne durumda olduğunu gösterir. Ancak kritik sistemlerde p95 tek başına yeterli değildir.
p99 ise daha az sayıda isteği kapsar ama operasyonel riskleri çok daha iyi yansıtır. Çünkü:
neredeyse her zaman p99 bandında başlar.
Finans, sigorta ve kamu sistemlerinde p99 değerinin kontrolsüz yükselmesi, zincirleme servis kesintilerine yol açabilir. Bu yüzden p99, özellikle API gateway ve edge katmanlarında erken uyarı sinyali olarak ele alınmalıdır.
API gateway’ler genellikle performans sorunlarının ilk suçlandığı bileşendir. Ancak pratikte gateway çoğu zaman problemi yaratan değil, görünür kılan katmandır.
Gerçek hayatta sık gördüğümüz senaryolar şunlardır:
Bu durumlarda ortalama değerler stabil kalırken p99 aniden bozulur. Gateway tarafında p99 metriğini izlemek, problemi application ekipleri fark etmeden önce görmeyi sağlar.
Gerçekçi SLA’ler ortalama üzerinden tanımlanmaz. Olgun organizasyonlar şu yaklaşımı benimser:
Örneğin:
Bu yaklaşım, performansın kağıt üzerinde değil gerçek kullanıcı deneyimi üzerinden yönetilmesini sağlar.
p95 ve p99 metrikleri, sistemin ne kadar hızlı olduğunu değil, ne kadar güvenilir olduğunu gösterir. Ortalama latency yalnızca iyi giden anları anlatır; percentile’lar ise kötü günleri.
Eğer production’da çalışan, yüksek trafik alan ve zincirleme bağımlılıkları olan sistemler tasarlıyorsanız, p99 sizin için bir metrik değil, bir refleks olmalıdır.
Çünkü kullanıcılar ortalamayı yaşamaz. Sisteminizin en yavaş anını yaşarlar.