Mert Özen Her Satırda Daha İleri

Blog

Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.

Seriler
3 yazı bulundu #scalability
Reliability Pattern'leri: Timeout, Retry, Backoff + Jitter, Circuit Breaker ve Load Shedding
Yazılım Mimarisi SERİ 10

Reliability Pattern'leri: Timeout, Retry, Backoff + Jitter, Circuit Breaker ve Load Shedding

Yavaş ya da çökmüş bir bağımlılığa karşı sırayla p99.9'a göre seçilmiş timeout, tek katmanda ve yalnız idempotent işlemde jitter'lı retry, retry budget, bağımlılık başına circuit breaker ve bulkhead, en sonda load shedding ve graceful degradation gerekir. Retry amplification (27 ve 243 çağrı), jitter, %10 retry budget ve circuit breaker'ın gerçek simülasyon çıktıları, failover ve .NET'in standard resilience handler varsayılanları.

8 Kas 2026 12 dk 5
Rate Limiting Tasarımı: Token Bucket, Sliding Window ve Distributed Rate Limiter
Yazılım Mimarisi SERİ 09

Rate Limiting Tasarımı: Token Bucket, Sliding Window ve Distributed Rate Limiter

Tek bir rate limit için sayaç tek bir yerde durmalı: ASP.NET Core'un yerleşik limiter'ı sayacı her instance'ın belleğinde tuttuğu için üç instance'ta limit üç katına çıkar; çözüm gateway'de ya da Redis'te atomik bir sayaç. Beş algoritmanın karşılaştırması, Redis ve Lua ile gerçek çıktılı distributed sliding window limiter, 429, Retry-After, IETF RateLimit header taslağı ve partition key'in DoS riski.

8 Kas 2026 13 dk 4
Tek Sunucudan Milyonlarca Kullanıcıya: Vertical ve Horizontal Scaling, Stateless Tier
Yazılım Mimarisi SERİ 03

Tek Sunucudan Milyonlarca Kullanıcıya: Vertical ve Horizontal Scaling, Stateless Tier

Uygulama tier'ını horizontal ölçeklemenin şartı stateless olmak: session, Data Protection key ring'i, IMemoryCache, yerel dosyalar ve zamanlanmış işler instance'ın dışına alınmalı. İki instance'lı gerçek bir denemede session'ı Redis'e taşımak tek başına hiçbir şeyi düzeltmiyor, çünkü session ve authentication cookie'leri Data Protection key'leriyle şifreli; key ring de paylaşılıp SetApplicationName verildiğinde iki sunucu tek uygulama gibi davranıyor.

8 Kas 2026 11 dk 3
Blog Haritası