VII. Dayanıklılık & Üretim Mühendisliği
Yeterince büyük bir sistemde her zaman bir şeyler başarısız olur — soru asla hatayı nasıl önleyeceğiniz değil, sisteme buna rağmen nasıl hizmet ettirmeye devam edeceğinizdir. Dayanıklılık, bu gerçeğe göre tasarım yapma disiplinidir: çökmeden önce yük atmak, zincirleme yayılmadan önce hataları izole etmek, yavaş düğümleri haksız yere suçlamadan ölü düğümleri hızlıca tespit etmek ve zayıflıkları önce bulmak için üretimde kasıtlı olarak bir şeyleri bozmak. Bu bölüm, akış kontrolünü, koruma desenlerini (circuit breaker, bulkhead, retry), hata tespitini ve kaos mühendisliğini kapsar.
İncelenen Konular
Section titled “İncelenen Konular”- 7.1. Akış Kontrolü ve Aşırı Yük Yönetimi: Aşırı yükten kurtulmak: kuyruk teorisi, geri baskı, yük atma, hız sınırlama ve retry-storm dinamikleri.
- 7.2. Koruma Desenleri: Başarısız bir bağımlılığı izole etmek: circuit breaker, bulkhead, backoff’lu retry, zaman aşımları ve fallback stratejileri.
- 7.3. Hata Tespiti ve Üyelik Protokolleri: Ölüyü yavaştan ayırmak: heartbeat’ler, gossip protokolleri, phi-accrual dedektörü ve Kubernetes liveness ve readiness.
- 7.4. Kaos Mühendisliği: Kasıtlı olarak hata enjekte etmek: Chaos Monkey, kaos ilkeleri, hata enjeksiyonu, GameDay tatbikatları ve otomasyon.