YÜKLENİYOR...

Circuit Breaker Pattern: Microservices Resilience ve Fault Tolerance

0 yanıt0 görüntülenme
  • circuit-breaker
  • resilience
  • pattern
  • microservices
Circuit breaker pattern, distributed system'lerde cascade failure'ları önlemek ve system resilience artırmak için kullanılan design pattern'dır ve electrical circuit breaker kavramından ilham alır. Circuit breaker states: Closed (normal operation, requests pass through), Open (failure threshold aşıldı, requests immediately fail without calling downstream service) ve Half-Open (recovery test period, limited requests allow testing if service recovered). Failure threshold, consecutive failures veya failure rate percentage ile tanımlanır ve timeout duration (open state'ten half-open'a geçiş süresi) configure edilir. Retry pattern, circuit breaker ile birlikte kullanılır ve transient failures'da automatic retry yapar; exponential backoff ve jitter ile retry storm prevention sağlanır. Bulkhead pattern, system kaynaklarını izole eder (thread pool, connection pool separation) ve bir service failure'ının diğer service'leri etkilemesini önler. Resilience4j, Java için popular resilience library'dir ve circuit breaker, retry, bulkhead, rate limiter ve timelimiter implementations sunar. Polly, .NET için resilience library'dir ve similar pattern'leri fluent API ile sağlar.