Provider Fallback Strategy
Travel search ve booking akışlarında provider outage, timeout ve low-quality durumda fallback kararlarını eligibility, cache ve alternate supplier ile tasarlayın.
Fallback strategy'nin amacı her provider hatasında başka provider'a körlemesine geçmek değildir. Amaç hangi durumda hangi degraded mode'un kabul edilebilir olduğunu açıkça tanımlamaktır.
Production senaryosu
Primary supplier timeout oluyor. Aynı hotel için secondary provider inventory'si var ama daha pahalı olabilir. Cache'de 20 dakikalık eski indicative offer da bulunuyor.
Fallback katmanları
- same provider retry — yalnız güvenli ve budget varsa,
- same provider cached result,
- alternate provider,
- indicative/stale result,
- partial/no-result response.
Booking create için bu sıra doğrudan uygulanamaz; transaction fallback ayrı tasarlanmalıdır.
Eligibility
Alternate provider seçerken:
- market coverage,
- property mapping,
- provider health,
- price quality,
- quota,
- commercial contract kontrol edilmelidir.
Search vs booking
Search/read path'te fallback agresif olabilir. Booking create path'te provider değiştirmek ürünün ve fiyatın değişmesi anlamına gelebilir; explicit user confirmation gerekebilir.
Failure modes
- aynı outage'a bağlı provider'lara zincirleme fallback,
- stale cache'i live gibi göstermek,
- farklı cancellation policy'yi aynı offer sanmak,
- retry + fallback ile request amplification,
- commercial bias'ın technical fallback gibi saklanması.
Circuit breaker entegrasyonu
Open circuit durumunda provider eligibility'den çıkarılmalı; fallback order health-aware olmalıdır.
Observability
- fallback rate,
- fallback success,
- stale fallback usage,
- alternate-provider conversion,
- price delta after fallback,
- fallback-induced latency,
- amplification factor.
Trade-off
Daha fazla fallback coverage sağlar ama determinism ve cost düşebilir. Bazı durumlarda açıkça “şu provider şu an unavailable” demek daha doğrudur.
Production checklist
- fallback classes
- search/booking separation
- health-aware eligibility
- max fallback depth
- stale labeling
- price/policy revalidation
- retry amplification guard
- user confirmation for transaction changes
Bu problemi production’da mı yaşıyorsunuz?
Semptomu, veri akışını ve entegrasyon davranışını birlikte teknik olarak inceleyebiliriz.