Junior — Middle
Devre Kesici Deseni'nin çalışma mekanizmasını ve sistemin güvenilirliğini sağlamadaki rolünü açıklayabilir misiniz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Devre Kesici Deseni, dağıtık sistemlerin güvenilirliğini artırmak için kullanılır ve çalışmayan veya yavaş yanıt veren bir hizmete tekrar tekrar çağrı yapmayı engeller.
Nasıl çalışır:
- Kapalı (kapalı durum): Tüm istekler normal şekilde geçer.
- Açık (açık durum): Hata sayısı eşik değerini aşarsa, Devre Kesici «açılır» — yeni istekler hemen hata alır, hizmeti çağırmaya çalışmadan.
- Yarı açık (yarı açık durum): Bir süre sonra, Devre Kesici sınırlı sayıda istek yapmaya izin verir, böylece hizmetin iyileşip iyileşmediğini kontrol eder.
İstekler başarılı olursa, durum Kapalı’ya döner, aksi takdirde tekrar Açık olur.
Bu, çalışmayan hizmet üzerindeki aşırı yükü önler ve sistemin daha hızlı toparlanmasını sağlar.
Go dilinde kullanım örneği (basitleştirilmiş):
// Pseudo-kod
devre := NewCircuitBreaker()
if devre.IzinVer() {
err := uzakHizmetCagır()
if err != nil {
devre.KayıtHatası()
} else {
devre.KayıtBaşarısı()
}
} else {
// Hata hemen döndürülür, hizmet çağrılmaz
}
Bu şekilde, Devre Kesici, sistemi arızalara karşı daha dayanıklı hale getirmeye yardımcı olur.