Circuit Breaker
Hatalı/yavaş upstream servise sürekli request göndermeyi geçici olarak kesen resilience pattern'idir. Search latency ve cascading failure riskini sınırlar.
Neden önemli?
Metasearch fan-out architecture upstream latency ve data volatility nedeniyle resilience gerektirir. Cache, timeout ve retry kararları yalnız backend performansını değil kullanıcıya gösterilen offer'ın doğruluğunu da etkiler. Bu kavramlar SLO, freshness ve failure isolation ile birlikte tasarlanmalıdır.
Pratikte nasıl görünür?
Bir supplier p95 latency'si yükseldiğinde timeout, circuit breaker ve fallback cache birlikte çalışabilir. Ama stale fallback kullanıldıysa response hâlâ başarılı görünürken price-quality riski büyüyebilir.
Uygulamada sorulması gerekenler
- End-to-end latency budget nedir?
- Cache age ve source timestamp tutuluyor mu?
- Hangi error class retry ediliyor?
- Bir provider failure diğer supplier'ları etkiliyor mu?
Yaygın hatalar
- Tüm error'ları retry etmek
- Cache hit ratio'yu freshness'ten bağımsız optimize etmek
- Tek provider failure'ın tüm fan-out'u bloklamasına izin vermek
Travel stack içinde nerede kullanılır?
Circuit Breaker, çoğunlukla resilience katmanlarıyla ilişkilidir. İlgili sistemlerde source-of-truth, identity, freshness ve transaction ownership sınırlarını açık tanımlamak gerekir.
İlgili terimler
İlgili teknik içerikler
Supplier Timeout Incident Playbook
Travel search sırasında supplier timeout olaylarını containment, retry, fallback, circuit breaker ve recovery adımlarıyla yönetin.
İncele →Metasearch'te Supplier Latency ve Timeout Budget
Hotel ve flight metasearch search pipeline'ı için timeout budget, paralel supplier call, partial result, circuit breaker ve latency SLO yaklaşımını öğrenin.
İncele →Sync vs Async Travel Booking Architecture
Travel booking akışlarında synchronous ve asynchronous orchestration modellerini latency, failure recovery, UX ve provider capability açısından karşılaştırın.
İncele →Feed Ingestion Failure Troubleshooting
Travel feed ingestion hatalarını transport, schema, parsing, validation, persistence ve downstream publish katmanlarında sistematik biçimde teşhis edin.
İncele →