Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
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ı.
Production'da Microservice: Distributed Tracing, Resilience ve Independent Deployment
Production'da microservice işletmek üç şey ister: bir isteği service'ler boyunca izleyen distributed tracing (W3C traceparent ile), service seviyesinde düşünülmüş timeout, retry ve circuit breaker, ve her service'in kendi pipeline'ıyla, backward compatibility ve contract test'lerle bağımsız deploy edilmesi. .NET'in Activity'siyle gerçek bir trace çıktısı, katman başına retry'ın 64 isteğe dönüşmesi, readiness'ı downstream'e bağlama tuzağı ve can-i-deploy'un CI'daki yeri.