Nedir
Idempotency anahtarları için bir denetçi. Kayıttaki istekleri doğru çalışan bir API'nin uyduğu kurallara göre yeniden oynatır ve her birini ilk yazma, güvenli tekrar ya da sorun olarak deftere işler.
Ödeme ve sipariş API'leri için idempotency denetimi
Idempotency Ledger istek kayıtlarınızı okur, her yazma isteğini idempotency anahtarının altına deftere işler ve bir yeniden denemenin nerede ikinci bir tahsilat, ikinci bir sipariş ya da ikinci bir ödeme yarattığını gösterir. Her sorunun yanında risk altındaki tutar ve çözümü yer alır.
Anahtara göre tahsilatlarNo. 0417
| Saat | Anahtar | Tutar |
|---|---|---|
| 10:00:00 | ik_7f3a | 49.99 |
| 10:00:03 | ik_7f3a | 49.99 |
| 10:05:00 | ik_c044 | 89.00 |
| 10:05:00 | ik_c044 | 89.00 |
| 10:12:00 | ik_f611 | 9.99 |
Fazla tahsilat+89.00 EUR
Idempotency anahtarları için bir denetçi. Kayıttaki istekleri doğru çalışan bir API'nin uyduğu kurallara göre yeniden oynatır ve her birini ilk yazma, güvenli tekrar ya da sorun olarak deftere işler.
Bir müşteriden gerçekten iki kez ücret alınıp alınmadığını ve nedenini bilmesi gereken backend ve ödeme mühendisleri, SRE ekipleri ve destek sorumluları için.
Yeniden denemeler normaldir, ama işi tekrar çalıştıran bir deneme gerçek para sorunları yaratır. Kayıtlar bunları binlerce satırın arasında saklar. Defter onları toplamlarıyla birlikte en üste taşır.
Bir kayıt dökümünü yapıştırın ya da açın. Hiçbir şey yüklenmez; ayrıştırma ve kontroller bu sayfada çalışır.
Her satıra bir istek, bir JSON dizisi ya da başlık satırı olan bir CSV.
Alanlar adlarından bulunur: time veya ts, method, path veya url, status, idempotency anahtarı, charge_id ya da order_id gibi oluşturulan nesnenin kimliği, amount, currency ve customer. İç içe JSON ve Idempotency-Key başlıkları da çalışır.
Bir kayıt yapıştırıp Kaydı denetle düğmesine basın ya da her bulgu türünü görmek için örneği yükleyin.
Tekrar eden her anahtar, zaman sırasıyla, doğru çalışan bir sunucunun yapması gerekenle karşılaştırılır.
Aynı anahtar, aynı istek, oluşturulan iki farklı kimlik. Sunucu işi iki kez yaptı. En pahalı olanı budur.
İki kopya iki saniye içinde geldi ve ikisi de başarılı oldu. Çift tıklamalarda ve agresif istemci denemelerinde sık görülür.
Eski bir anahtar yeni parametrelerle geldi. Doğru bir sunucu bunu 422 ile reddeder. Kabul etmek istemci hatalarını gizler.
Yine de nesne oluşturan bir 5xx ve ardından bir tane daha oluşturan yeniden deneme. Yalnızca kayıtlarda kimlik varsa görünür.
Anahtarsız yazmalar tekilleştirilemez. Birbirine yakın iki aynı yazma tekrar olarak işlenir.
Pencereden sonra dönen bir anahtar yeni iş sayılır. Pencereyi sunucunuza göre seçin.
Gateway, yük dengeleyici ya da uygulama kayıtlarınızdan bir uç nokta veya servise ait istekleri bir zaman aralığı için alın.
JSON satırları, JSON dizisi, başlıklı CSV ya da key=value çiftleri içeren düz satırların hepsi çalışır.
Sunucunuzun anahtarları ne kadar sakladığını seçin. Stripe tarzı API'ler 24 saat kullanır.
Sorunlar risk altındaki tutarla en üstte listelenir. Her satırı ve çözümü görmek için bir anahtarı açın, sonra raporu kopyalayın ya da CSV'yi indirin.
İstemcinin bir yazma isteğiyle gönderdiği benzersiz bir değer. Aynı istek aynı anahtarla tekrar gelirse sunucu işi ikinci kez yapmak yerine ilk sonucu döndürür.
İlki hâlâ çalışırken ikinci bir kopyanın geldiği ve sunucunun onu paralel çalıştırmayı reddettiği anlamına gelir. İstemci daha sonra tekrar deneyip saklanan sonucu alabilir.
Eski bir anahtarla yeni parametreleri kabul etmek, istemcide anahtarları yeniden kullanan bir hata olduğunu gösterir. Bir dahaki sefere tekrar gibi görünen yanlış bir tahsilat oluşturur.
Denetimi kesin hale getirir. Her yazmanın oluşturduğu nesnenin kimliğini, örneğin charge_id ya da order_id değerini kaydedin.