Searcher
Topluluk'a dön
Teknik

DevOps'ta geçici hataları yönetmenin üç yolu

Searcher Ekibi

5 dk okuma0 okuma

Takip etmek için giriş yap

Geçici hata (transient fault), sistem kendini toparladığında kendiliğinden düzelen kısa süreli bir arızadır. Bulut ortamında kesinti pahalıya mal olduğu ve kullanıcı toleransı düşük olduğu için bu hataları öngörülebilir şekilde yönetmek gerekir.

Yeniden deneme (retry) deseni en basitidir: başarısız işlem, artan gecikmelerle otomatik olarak tekrar denenir. Ağ gecikmesi ya da geçici aşırı yük gibi kısa kesintiler için uygundur; bir sayaç başarısızlıkları sayar ve belirli bir sınırı aşınca ya da kalıcı bir hatayla karşılaşınca denemeyi bırakır.

Kısıtlama (throttling) deseni savunma amaçlıdır: eş zamanlı istek sayısını sınırlayarak talep kapasiteyi aştığında servisin kademeli bozulmasını sağlar — bir otoyola giren araç sayısını sınırlayan tünel gibi. Devre kesici (circuit breaker) deseni ise daha uzun kesintiler içindir: art arda başarısızlıktan sonra "devreyi keser" ve uzak sistemin toparlanmasına zaman tanır, böylece art arda gelen istekler zaten çöken bir servisi daha da yormaz.

Yazar, bu desenlerin kapsamlı birim/entegrasyon testleri ve güçlü izlemeyle birlikte kullanılmasını öneriyor — böylece sistemler kendi kendini onarabilir ve altyapı sorunlarına rağmen hizmet kalitesini koruyabilir.

Bu yazı, Willy-Peter Schaub'un opensource.com'da yayımladığı "3 ways to handle transient faults for DevOps" (12 Eylül 2019) başlıklı makalenin Türkçe özetidir. CC BY-SA 4.0 lisansıyla uyarlanmıştır. Orijinali: opensource.com/article/19/9/transient-faults-devops

Yorumlar

Yorum yazmak için giriş yap