Skip to main content

> Terim

Retry Policy

Başarısız olan operasyonların nasıl ve ne zaman tekrar deneneceğini belirleyen kurallar bütünü.

Detaylı Açıklama

Yeniden deneme politikası (retry policy), bir API çağrısı veya veritabanı sorgusu gibi daha önce başarısız olan bir işlemin sistem tarafından ne zaman ve nasıl tekrar deneneceğini belirler.

Hemen pes etmek veya zincirleme çökmelere (cascading failures) yol açabilecek şekilde agresifçe art arda denemek yerine, iyi tasarlanmış bir retry policy, downstream servise toparlanması için zaman tanımak amacıyla 'exponential backoff' gibi gecikmeler içerir.

Neden Önemli?

Ağlar doğası gereği güvenilmezdir. Retry policy olmadan anlık bir ağ dalgalanması başarısız bir kullanıcı işlemiyle sonuçlanır; kötü bir retry policy ile ise zaten zorlanan bir servis, anında ve agresif yeniden denemelerle tamamen çökertilir.

Yaygın Hata Senaryosu

Binlerce istemcinin başarısız bir isteği tam olarak aynı anda ve defalarca yeniden denediği, temelde küçük bir kesintiyi kendi kendine yaratılan bir DDoS saldırısına dönüştüren 'retry storm' (yeniden deneme fırtınası).

Pratik Örnek

Harici bir ödeme API'si 503 Service Unavailable hatası döndürür. Sistem, kullanıcının ödemesini anında iptal etmek yerine 1 saniye bekler, tekrar dener, ardından 2 saniye, sonra 4 saniye bekler ve en sonunda vazgeçer.

Prodüksiyon Yansıması

API istemcilerinde ve mesaj kuyruklarında (message queues), exponential backoff ve jitter (senkronize yeniden deneme patlamalarını önlemek için bekleme süresine rastgelelik ekleme) gibi desenler kullanılarak yapılandırılır.

Sıkça Sorulan Sorular

Retry Policy kısaca nedir?

Başarısız olan operasyonların nasıl ve ne zaman tekrar deneneceğini belirleyen kurallar bütünü.

En sık karşılaşılan hata nedir?

Binlerce istemcinin başarısız bir isteği tam olarak aynı anda ve defalarca yeniden denediği, temelde küçük bir kesintiyi kendi kendine yaratılan bir DDoS saldırısına dönüştüren 'retry storm' (yeniden deneme fırtınası).

AI Özeti

Başarısız olan operasyonların nasıl ve ne zaman tekrar deneneceğini belirleyen kurallar bütünü. Ağlar doğası gereği güvenilmezdir. Retry policy olmadan anlık bir ağ dalgalanması başarısız bir kullanıcı işlemiyle sonuçlanır; kötü bir retry policy ile ise zaten zorlanan bir servis, anında ve agresif yeniden denemelerle tamamen çökertilir.