Push vs Pull Model Nedir?
Diğer adları: Push ve Pull Modeli, İtme ve Çekme Modeli, Push Oracle, Pull Oracle
Kısaca
Push vs pull model, blockchain uygulamalarında verinin veya ödemenin gönderen tarafından alıcıya otomatik iletildiği (push, itme) yaklaşım ile alıcının ihtiyaç duyduğunda kendisinin talep ettiği (pull, çekme) yaklaşım arasındaki tasarım ayrımıdır.
Ayrım en çok oracle'larda görülür. Push modelinde oracle ağı fiyat verisini belirli aralıklarla veya fiyat belirli bir eşiği aştığında kendisi zincire yazar; Chainlink'in klasik fiyat beslemeleri bu yaklaşımı kullanır. Uygulamalar zincirde hazır bekleyen veriyi okur, ancak güncellemelerin gas maliyeti sürekli ödenir. Pull modelinde ise imzalı fiyat verisi zincir dışında yayımlanır ve kullanıcı, işlem yaptığı anda bu güncel veriyi işlemine ekleyerek zincire getirir; Pyth Network bu modelin bilinen örneğidir.
Push modeli basitlik ve sürekli erişilebilirlik sunar, fakat güncellemeler arasında veri eskiyebilir. Pull modeli daha sık ve ucuz güncelleme imkânı verir, ancak güncel veriyi getirme sorumluluğu uygulamaya veya kullanıcıya geçer.
Aynı ayrım akıllı sözleşmelerdeki ödemelerde de kullanılır. Solidity'de önerilen 'pull over push' deseninde sözleşme, alıcılara ödemeleri döngüyle kendisi göndermek yerine her alıcının alacağını kaydeder ve alıcıların fonlarını kendilerinin çekmesini bekler. Bu yaklaşım, tek bir başarısız transferin tüm işlemi kilitlemesini önler ve yeniden giriş (reentrancy) gibi saldırıların yüzeyini daraltır.
Son güncelleme: · Bu içerik bilgilendirme amaçlıdır, yatırım tavsiyesi değildir.

