Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Olay odaklı ve ileti tabanlı mimarinin gerçekliği, veri bütünlüğünü ve sistem kararlılığını korurken aynı istekleri kabul etme gereksinimini belirler.
Bunu göstermek için bir asansör arama düğmesi kullanmayı düşünün. Düğmeye bastığınızda ışık yanar ve zemininize bir asansör gönderilir. Birkaç dakika sonra lobide başka biri size katılır. Bu kişi size gülümser ve aydınlatılmış düğmeye ikinci kez basar. Elevatör çağırma komutunun idempotent olduğunu hatırlatırken geri gülümsüyor ve kendi kendinize kıkırdıyorsunuz.
Bir asansör çağrısı düğmesine ikinci, üçüncü veya dördüncü kez basmanın nihai sonucu taşıması gerekmez. Düğmeye bastığınızda, kaç kez olursa olsun asansör zemininize gönderilir. Asansör gibi etkili sistemler, aynı komutların kaç kez verildiği fark etmez, aynı sonuca neden olur.
Uygulama oluşturma konusunda aşağıdaki senaryoları göz önünde bulundurun:
- Envanter denetimi uygulamanız aynı ürünü birden çok kez silmeye çalışırsa ne olur?
- Aynı kişi için bir çalışan kaydı oluşturmak için birden fazla istek olduğunda insan kaynağı uygulamanız nasıl davranır?
- Bankacılık uygulamanız aynı para çekme işlemini yapmak için 100 istek alırsa para nereye gider?
bir işleve yönelik isteklerin aynı komutları alabileceği birçok bağlam vardır. Bazı durumlar şunlardır:
- Yeniden deneme politikaları aynı isteği birçok kez gönderir.
- Önbelleğe alınan komutlar uygulamada yeniden yürütüldü.
- Birden çok özdeş istek gönderen uygulama hataları.
Veri bütünlüğünü ve sistem durumunu korumak için, etkili bir uygulama aşağıdaki davranışları içerebilecek mantık içerir:
- Silme işlemini yürütmeye çalışmadan önce verilerin varlığını doğrulama.
- Oluşturma eylemini yürütmeye çalışmadan önce verilerin zaten var olup olmadığını denetleme.
- Verilerde nihai tutarlılık oluşturan mutabıklık mantığı.
- Eşzamanlılık denetimleri.
- Yinelenenleri algılama.
- Veri tazeliği doğrulaması.
- Giriş verilerini doğrulamak için mantığı koruma.
Sonuç olarak, idemopotansiyi elde etmek için belirli bir eylemin mümkün olduğundan ve her durumda yalnızca bir kez icra edildiğinden emin olunur.