İptal Nasıl Çalışıyor ve Yetkili Cevabın Bayat Olan Olduğu Tek Durum
Tek bir iptal çağrısının yaptığı şey
Kimlik bilgisini veritabanında iptal edilmiş olarak işaretliyor, tekrarlanabilir biçimde ve iki istek yarışırsa güvenli biçimde.
Önbelleğe alınmış durum belgesini hemen geçersiz kılıyor, dolayısıyla bir sonraki getirme değişikliği yansıtıyor.
Bir web kancası tetikliyor, işletmecinin yapılandırdığı uç noktaya.
Ve sonra zincirden demirlenmiş kaydı iptal etmesini istiyor, kimlik bilgisi hiç demirlendiyse.
Önbellek ömrü, yayılma gecikmesi değil
İmzalı durum belgesi altmış saniye önbelleğe alınıyor, zamana duyarlı liste için on saniye. O sayı bir önbellek ömrüdür, bir iptalin görünür olmasından önceki bir gecikme değil.
İptal etmek önbelleği aynı çağrıda patlatıyor, dolayısıyla bir doğrulayıcının o andan sonra getirdiği belge değişikliği çoktan taşıyor.
Gerçek gecikme, doğrulayıcının ne sıklıkta yeniden getirdiğidir, ki bu bizim değil doğrulayıcının seçimidir. Bu, altmış saniyelik sayının düşündürdüğünden anlamlı biçimde iyi bir tasarımdır ve problemlerden önce belirtmeye değer.
Ve şimdi tersine dönüş
Önce veritabanı iptali, sonra zincir iptali oluyor. O sıra kasıtlı ve doğru: bir başarısızlık kimlik bilgisini kabul edilmiş yerine güvenli yönde iptal edilmiş bırakıyor.
Ama bir doğrulayıcının kullanabileceği iki yol, o başarısızlık sırasında anlaşmazlığa düşüyor. Kod kendi yorumunda bunu söylüyor: önbellekli yol çoktan hataya kapalı davranıyor ve canlı yol, zincir iptali yeniden denenene kadar hâlâ etkin diyor.
Yani yetkili yol, bayat olabilen yoldur. Doğrulayıcılar için olan sayfa, sonuç doğuran herhangi bir şey için canlı yolu öneriyor, ki bu atlamaya direnç konusunda doğrudur ve bu kaydı gerektiriyor: bir zincir iptali başarısızlığı sırasında, hâlâ evet diyen yol canlı olandır.
Bir doğrulayıcı için doğru okuma: her iki yoldan gelen bir iptal hükmünü iptal sayın. Hiçbir yol tek başına tehlikeli yönde yalan söylemiyor, ama iki arıza kipini yalnızca birlikte kapsıyorlar.
Ve hiçbir şey onu yeniden denemiyor
Yorum, ayrışmanın yeniden deneme için kaydedildiğini söylüyor. Ölçüldü: yeniden deneme yok.
Dört iş kuyruğu var: sicil demirlemesi, doğrulama yayımı, tasdik yayımı ve web kancası teslimi. Bir zincir iptali bunlardan biri değil.
tasdik iptali kuyruğa alınıyor. Biri, iki yayımdan biri için yeniden denenebilir iptal işini bağlamış ve zincir için bağlamamış.
Yani ayrışma, biri bir kayıt satırını fark edene kadar sürüyor.
Durum listesinin devri yok
Her kiracı, amaç başına altmış beş bin beş yüz otuz altı konum tutan bir liste alıyor.
Konumlar yalnızca ileri giden bir sayaçla dağıtılıyor. Bir kimlik bilgisini iptal etmek konumunu serbest bırakmıyor, dolayısıyla sayı, canlı kimlik bilgisi kapasitesi değil ömür boyu bir veriliş bütçesidir.
Dolduğunda veriliş, bir devir gerektiğini söyleyen bir hatayla duruyor. Ölçüldü: o işlemi adlandıran sözcük, arka ucun tamamında tam olarak bir kez, o hata iletisinin içinde geçiyor.
Hiçbir şey ikinci bir liste oluşturmuyor. Arama, var olan en yeni listeyi alıyor ve yalnızca hiç yoksa bir liste oluşturuyor.
Kimsenin uygulamadığı bir işlemi adlandıran bir hata iletisi, gelecekteki bir işletmeciye bırakılmış bir tuzaktır ve onu kapatmanın en ucuz anı, biri ölçekte ona çarpmadan öncedir.
İptal yolunun doğru yaptıkları, aynı sesle
Tekrarlanabilir ve yarışa dayanıklı. Tekrarlanan bir çağrı temiz dönüyor ve eşzamanlı iki çağrı çift yazmak yerine aynı sonuçta buluşuyor.
Güvenli sıra. Önce veritabanı, sonra zincir, dolayısıyla kısmi bir başarısızlık kimlik bilgisini kabul edilmiş yerine iptal edilmiş bırakıyor.
Dürüst yorumlar. Ayrışma, bir okur tarafından keşfedilmek yerine kodda adlandırılmış, ki bu sayfanın onu bulma biçimi budur.
Ve önbellekli kontrol hataya kapalı davranıyor, dolayısıyla bir durum referansı sağlayan ve listeyi doğrulayamayan bir doğrulayıcı, bir omuz silkme değil bir ret alıyor.
Okumaya devam edin
- Bir Yapay Zekâ Ajanı Nasıl Kaydedilir ve Başlamadan Önce Karar Vermeniz Gereken Tek Alan
- Bir Yetenek Kimlik Bilgisi Nasıl Verilir ve Yanıttaki Demet Gerçekte Nedir
- Bir Doğrulayıcı Taraf Bir Ajan Kimlik Bilgisini Nasıl Doğrular ve `valid` Neden İstediğiniz Alan Değil
- Ajan Kimliği SDK Hızlı Başlangıcı, Bir Hızlı Başlangıcın Genellikle Gizlediği Üç Şeyle

