On Binlerce Kelime ile Paralel EVM'yi Anlamak: Seri Aşmayı Geçmek, Blok Zinciri Performans Darboğazını Nasıl Aşar?
Performans, Blok Zinciri endüstrisinin daha fazla gelişiminde bir darboğaz haline gelmiştir. Blok Zinciri ağı, bireyler ve işletmeler için işlemler gerçekleştirmek üzere yeni, merkezsiz bir güven temeli yaratmaktadır.
Bitcoin ile temsil edilen birinci nesil blok zinciri ağı, dağıtık defter yöntemiyle merkeziyetsiz elektronik para işlemlerinin yeni bir modelini yaratarak devrim niteliğinde yeni bir çağ başlattı. Ethereum ile temsil edilen ikinci nesil blok zinciri ağı ise hayal gücünü tam anlamıyla kullanarak dağıtık durum makinesi (dApp) yöntemiyle merkeziyetsiz uygulamaların gerçekleştirilmesini önerdi.
O zamandan beri, Blok Zinciri ağı kendi on yılı aşkın hızlı gelişim tarihine başladı. Web3 altyapısından DeFi, NFT, sosyal ağlar ve GameFi gibi çeşitli alanları temsil eden birçok teknik veya ticari modelin yenilikleri ortaya çıktı. Sektörün hızlı gelişimi, yeni kullanıcıların merkeziyetsiz uygulamaların ekosistemine katılımını sürekli olarak çekmeyi gerektiriyor ve bu durum, ürün deneyimi için daha yüksek talepler ortaya çıkarıyor.
Web3, "önceki hiç kimse tarafından düşünülmemiş" bir ürün biçimi olarak, yalnızca kullanıcı ihtiyaçlarını yenilikçi bir şekilde karşılamakla kalmamalı (fonksiyonel ihtiyaç), aynı zamanda güvenlik ve performans arasında nasıl bir denge kuracağına da dikkat etmelidir (fonksiyonel olmayan ihtiyaç). Doğduğundan beri, insanlar performans sorunlarını çözmeye yönelik çeşitli çözümler önerdiler.
Bu çözümler genel olarak iki kategoriye ayrılabilir: Birincisi, zincir üzeri ölçeklenme çözümleri, örneğin parçalama (sharding) ve yönlendirilmemiş döngü grafiği (DAG); İkincisi ise zincir dışı ölçeklenme çözümleri, örneğin Plasma, Lightning Network, yan zincirler ve Rollups gibi. Ancak bu, zincir üzerindeki işlemlerin hızlı büyüme hızını karşılamaktan çok uzak.
Özellikle 2020 DeFi Yazı ve 2023 yılının sonlarında Bitcoin ekosistemindeki yazıların sürekli patlamasından sonra, sektörde "yüksek performans, düşük ücret" gereksinimlerini karşılamak için yeni performans artırma çözümlerine acil ihtiyaç duyulmaktadır. Paralel Blok zincirleri, böyle bir bağlamda doğmuştur.
Paralel EVM Anlatım Genel Görünümü
Paralel EVM anlatımı, paralel Blok Zinciri alanında iki güçlü rakip arasındaki rekabet ortamının oluştuğunu göstermektedir. Ethereum'un işlem işleme yöntemi seri olup, işlemler sırayla birer birer yürütülmektedir; bu durum kaynakların verimliliğini düşürmektedir. Seri işleme yönteminin paralel işleme yöntemiyle değiştirilmesi, performansta büyük bir artış sağlayacaktır.
Ethereum rakipleri olan Solana, Aptos ve Sui, kendi paralel işleme yetenekleri ile birlikte geliyorlar ve ekosistemleri de oldukça iyi gelişmiş. Tokenlerin piyasa değeri sırasıyla 45 milyar, 3.3 milyar ve 1.9 milyar dolar seviyelerine ulaştı ve bunlar paralel EVM dışı kampı oluşturdu. Karşılaştıkları zorluklara rağmen, Ethereum ekosistemi de geri durmadı ve EVM'ye güç katmak için sıraya girdiler; böylece paralel EVM kampı oluştu.
Bir ticaret platformu, v2 sürüm güncelleme önerisinde "ilk paralel EVM Blok Zinciri" olacağını yüksek sesle iddia etti ve mevcut piyasa değeri 2.1 milyar dolar ve daha büyük bir gelişme bekleniyor. Şu anda pazarlama heyecanı en yüksek olan paralel EVM yeni kamu zinciri Monad, sermaye tarafından oldukça ilgi görüyor ve potansiyeli de küçümsenemez. 1.7 milyon dolarlık piyasa değeriyle, ücretsiz kamu altyapısına sahip L1 zinciri Canto da kendi paralel EVM güncelleme önerisini duyurdu.
Bunun yanı sıra, hala erken aşamada olan birçok L2 projesi, çeşitli L1 zincirlerinin yeteneklerini entegre ederek ekosizyonlar arası performans artışı sağlamaktadır. Neon'un 69 milyon dolarlık dolaşım değerine ulaşmasının dışında, diğer projelerin ilgili verileri eksik. Gelecekte, daha fazla L1 ve L2 projesinin paralel Blok Zinciri alanına katılacağına inanıyorum.
Sadece paralel EVM anlatımının büyük bir pazar büyüme potansiyeli yok, aynı zamanda paralel EVM anlatımının ait olduğu paralel blok zinciri sektörü de büyük bir pazar büyüme potansiyeline sahip, bu nedenle pazarın geleceği oldukça geniş.
Şu anda L1 ve L2 toplam piyasa değeri 7521.23 milyar dolar, paralel blok zinciri piyasa değeri 525.39 milyon dolar ve toplam piyasa değerinin yaklaşık %7'sini oluşturuyor. Bunun içinde paralel EVM anlatımıyla ilgili projelerin piyasa değeri 23.39 milyon dolar ve bu da paralel blok zinciri piyasa değerinin %4'ünü oluşturuyor.
Paralel EVM Hikaye Projeleri Sınıflandırması
Sektörde genellikle blok zinciri ağları 4 katmanlı bir yapıya ayrılır:
Katman 0 (Ağ): Blok zincirinin alt katman ağı, temel ağ iletişim protokollerini işler
Layer 1 (Altyapı): Çeşitli konsensüs mekanizmalarına dayanan, işlemleri doğrulayan merkeziyetsiz ağ
Layer 2 (Genişletme): Layer 1'e dayanan çeşitli ikinci katman protokolleri, özellikle ölçeklenebilirlik açısından Layer 1'in çeşitli sınırlamalarını çözmeyi amaçlar.
Katman 3 (Uygulama): Katman 2 veya Katman 1'e bağımlıdır, çeşitli merkeziyetsiz uygulamalar (dApp) oluşturmak için kullanılır.
Paralel EVM anlatım projeleri esasen monolitik blok zincirleri ve modüler blok zincirleri olarak ikiye ayrılmaktadır. Monolitik blok zincirleri ise L1 ve L2 olarak daha da ayrılmaktadır. Projelerin toplam sayısı ve birkaç ana alanın gelişimi göz önüne alındığında, paralel EVM L1 kamu zincir ekosistemlerinin Ethereum ekosistemine kıyasla hala büyük bir gelişim alanı bulunduğu görülmektedir.
DeFi alanının "hızlı ve düşük maliyetli" talepleri varken, oyun alanının "güçlü gerçek zamanlı etkileşim" talepleri var, her ikisi de yürütme hızı konusunda belirli gereksinimlere sahiptir. Paralel EVM, bu projelere kesinlikle daha iyi bir kullanıcı deneyimi sunacak ve sektörün gelişimini yeni bir aşamaya taşıyacaktır.
L1, yerleşik paralel yürütme yeteneğine sahip yeni bir genel blok zinciri olup, yüksek performanslı bir altyapıdır. L1 ailesinde, Sei v2, Monad ve Canto gibi projeler, paralel EVM tasarlayarak Ethereum ekosistemine uyum sağlamakta ve yüksek işlem hacmi işleme yeteneği sunmaktadır.
L2, diğer L1 zincirlerinin yeteneklerini entegre ederek, ekosistemler arası iş birliği için ölçeklenebilirlik sunar ve rollup'ın belirgin alanıdır. L2 bu grupta, Neon Solana ağı üzerinde bir EVM simülatörüdür, Eclipse ise Solana üzerinde işlemleri gerçekleştirirken EVM'de hesaplama yapar. Lumio, Eclipse'e benzer, tek farkı yürütme katmanını Aptos ile değiştirmesidir.
Yukarıda belirtilen monolitik blok zinciri çözümlerinin dışında, Fuel kendi modüler blok zinciri yaklaşımını sunmuştur. İkinci versiyonunda, kendisini Ethereum rollup işletim sistemi olarak konumlandıracak ve daha esnek, daha kapsamlı modüler yürütme yetenekleri sağlayacaktır.
Fuel, işlemleri gerçekleştirmeye odaklanırken, geri kalan kısmı bir veya daha fazla bağımsız katmanlı Blok Zinciri'ne dış kaynak olarak vererek daha esnek bir kombinasyon sağlar: hem L2 hem de L1 olabilir, hatta yan zincir veya durum kanalı da olabilir. Şu anda Fuel ekosisteminde 17 proje bulunmaktadır ve bu projeler ağırlıklı olarak DeFi, NFT ve altyapı alanlarına odaklanmaktadır.
Ancak yalnızca Orally zincirler arası oracle gerçek uygulamaya sunuldu. Merkeziyetsiz borç verme platformu Swaylend ve sürekli sözleşme ticaret platformu SPARK test ağında yer aldı, diğer projeler ise geliştirme aşamasında.
Paralel EVM Teknoloji Prensibi
Merkeziyetsiz ticaretin gerçekleştirilmesi için, blok zinciri ağının 4 sorumluluğu yerine getirmesi gerekmektedir:
Uygulama: İşlemleri gerçekleştirme ve doğrulama
Veri kullanılabilirliği: Yeni blokların blok zinciri ağındaki tüm düğümlere dağıtılması
Hesaplama: İşlemin nihai durumunu hesapla ve kaydet
Paralel EVM esas olarak yürütme katmanının performans optimizasyonudur. Bu, birinci katman (L1) çözümü ve ikinci katman (L2) çözümü olmak üzere ikiye ayrılır. L1 çözümü, işlemlerin sanal makinede mümkün olduğunca paralel bir şekilde yürütülmesini sağlamak için işlem paralel yürütme mekanizması getirir. L2 çözümü ise esasen paralelleştirilmiş L1 sanal makinesini kullanarak belirli bir düzeyde "ağ dışı yürütme + ağ içi hesaplama" gerçekleştirir.
Bu nedenle, paralel EVM'nin teknik prensiplerini anlamak için, bunu parçalarına ayırmak gerekir: Önce sanal makinenin (virtual machine) ne olduğunu, ardından paralel yürütmenin (parallel execution) ne olduğunu anlamak.
Sanal Makine
Bilgisayar bilimlerinde sanal makine, bilgisayar sisteminin sanallaştırılması (virtualization) veya taklit edilmesi (emulation) anlamına gelir.
Sanal makineler iki türe ayrılır; biri sistem sanal makinesi (system virtual machine) olarak adlandırılır ve bir fiziksel makineyi birden fazla makineye sanallaştırarak birden fazla işletim sistemi çalıştırmasına olanak tanır, böylece kaynak kullanım verimliliğini artırır. Diğeri ise süreç sanal makinesi (process virtual machine) olarak adlandırılır ve bazı yüksek düzey programlama dilleri için soyutlama sağlar, bu da bu dillerde yazılmış bilgisayar programlarının farklı platformlarda platformdan bağımsız bir şekilde çalışmasına olanak tanır.
JVM, Java programlama dili için tasarlanmış bir süreç sanal makinesidir. Java diliyle yazılmış programlar öncelikle Java bayt koduna (bir ara durumdaki ikili kod) derlenir, Java bayt kodu JVM tarafından yorumlanarak çalıştırılır: JVM, bayt kodunu yorumlayıcıya gönderir, ardından yorumlayıcı bunu farklı makinelerdeki makine koduna çevirir ve sonra makinede çalıştırır.
Blok Zinciri sanal makinesi, işlem sanal makinelerinden biridir. Blok zinciri bağlamında, sanal makine, dağıtık durum makineleri üzerinde sanal bir uygulama anlamına gelir ve sözleşmeleri dağıtık bir şekilde yürütmek, dApp'leri çalıştırmak için kullanılır. JVM ile benzerlik gösteren EVM, Solidity diline yönelik tasarlanmış bir işlem sanal makinesidir; akıllı sözleşmeler önce opcode bayt koduna derlenir, ardından EVM tarafından yorumlanarak yürütülür.
Ethereum dışında ortaya çıkan yeni nesil blok zincirleri, kendi sanal makinelerini gerçekleştirirken daha çok WASM veya eBPF bytecode tabanlı sanal makineleri tercih etmektedir. WASM, küçük boyutlu, hızlı yüklenen, taşınabilir ve sandbox güvenlik mekanizması temelinde olan bir bytecode formatıdır. Geliştiriciler, akıllı sözleşmeleri yazmak için çeşitli programlama dillerini (C, C++, Rust, Go, Python, Java hatta TypeScript gibi) kullanabilir ve ardından WASM bytecode'a derleyip çalıştırabilirler. Belirli bir blok zincirinde gerçekleştirilen akıllı sözleşme de bu bytecode formatını kullanmaktadır.
eBPF'nin öncülü BPF'dir (Berkeley Packet Filter, Berkeley Paket Filtreleyici), başlangıçta ağ veri paketlerini verimli bir şekilde filtrelemek için kullanılıyordu, sonrasında evrim geçirerek eBPF'ye dönüştü ve daha zengin bir komut seti sundu.
Bu, kaynak kodunu değiştirmeden işletim sistemi çekirdeğine dinamik müdahale etme ve davranışını değiştirme imkanı veren devrim niteliğinde bir teknolojidir. Daha sonra bu teknoloji çekirdekten çıkarak kullanıcı alanı eBPF çalışma zamanına dönüştü, bu da yüksek performans, güvenlik ve taşınabilirlik sunar. Solana üzerinde yürütülen akıllı sözleşmeler eBPF bayt koduna derlenir ve kendi Blok Zinciri ağında çalıştırılır.
Diğer L1 halka zincirlerinde, Aptos ve Sui, Move akıllı sözleşme programlama dilini kullanarak özel bayt kodlarına derlenir ve Move sanal makinesinde çalıştırılır. Monad ise EVM opcode bayt koduyla (Shanghai fork) uyumlu bir sanal makine tasarlamıştır.
Paralel Yürütme Mekanizması
Paralel yürütme, bu tür bir tekniktir:
Çoklu görevleri aynı anda işleyerek çok çekirdekli işlemcilerin avantajlarını kullanabilir, sistemin verimliliğini artırır;
Elde edilen işlem sonuçlarının sıralı bir şekilde işlenmiş işlemlerle tamamen aynı olduğundan emin olun.
Blok Zinciri ağı, işlem hızını ölçmek için genellikle TPS (saniyede işlenen işlem sayısı) teknik göstergesini kullanır. Paralel yürütme mekanizması karmaşık bir yapıdadır ve geliştiricilerin teknik seviyesini de test eder, açıklaması kolay değildir. Aşağıda bir "banka" örneği üzerinden paralel yürütmenin ne olduğunu açıklayacağız.
Öncelikle, seri yürütme nedir?
Durum 1: Eğer sistemi bir banka olarak düşünürsek, işlem görevlerini yerine getiren CPU'yu da bir banko olarak kabul edersek, seri olarak görevlerin yerine getirilmesi, bu bankanın sadece bir banko ile işlemleri kabul etmesi gibidir. Bu durumda bankaya gelen müşteriler (görevler) yalnızca uzun bir kuyrukta sıraya girebilir ve sırayla işlemlerini yaptırabilirler. Her müşteri için, banko çalışanı, müşterinin işlemlerini yapmak için aynı hareketleri (talimatları yerine getirmek) tekrar etmelidir. Kendi sırası gelene kadar müşteriler yalnızca beklemek zorunda kalır ve bu da işlem süresinin uzamasına neden olur.
Peki, paralel yürütme nedir?
Durum 2: Bu durumda banka yoğunluğu görünce birkaç daha gişe açarak işlemleri hızlandırdı, dört gişe memuru aynı anda işlem yapmaya başladı, böylece hız yaklaşık 4 kat arttı. Bu durumda müşterilerin sıra bekleme süresi de yaklaşık olarak orijinal sürenin 1/4'üne düştü, bankanın işlem hızı arttı.
Eğer koruma yapılmazsa, iki kişi aynı anda başka birine para gönderirse ne tür bir hata meydana gelir?
Durum 3: A, B ve C adında üç kişinin hesaplarında sırasıyla 2 ETH, 1 ETH ve 0 ETH bulunmaktadır. Şimdi A ve B, C'ye sırasıyla 0.5 ETH göndermek istiyor. Tek bir işlem sıralı olarak yürütülen bir sistemde, herhangi bir sorunla karşılaşılmaz (sol ok "\u003c=", defteri okumayı, sağ ok "=\u003e" ise deftere yazmayı belirtir, aynı şekilde devam eder):
A.transfer(C, 0.5):
A <= 2
A => 1.5
View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
Paralel EVM Derin Analizi: Performans Engellerini Aşmak ve Web3 Yeni Çağını Başlatmak
On Binlerce Kelime ile Paralel EVM'yi Anlamak: Seri Aşmayı Geçmek, Blok Zinciri Performans Darboğazını Nasıl Aşar?
Performans, Blok Zinciri endüstrisinin daha fazla gelişiminde bir darboğaz haline gelmiştir. Blok Zinciri ağı, bireyler ve işletmeler için işlemler gerçekleştirmek üzere yeni, merkezsiz bir güven temeli yaratmaktadır.
Bitcoin ile temsil edilen birinci nesil blok zinciri ağı, dağıtık defter yöntemiyle merkeziyetsiz elektronik para işlemlerinin yeni bir modelini yaratarak devrim niteliğinde yeni bir çağ başlattı. Ethereum ile temsil edilen ikinci nesil blok zinciri ağı ise hayal gücünü tam anlamıyla kullanarak dağıtık durum makinesi (dApp) yöntemiyle merkeziyetsiz uygulamaların gerçekleştirilmesini önerdi.
O zamandan beri, Blok Zinciri ağı kendi on yılı aşkın hızlı gelişim tarihine başladı. Web3 altyapısından DeFi, NFT, sosyal ağlar ve GameFi gibi çeşitli alanları temsil eden birçok teknik veya ticari modelin yenilikleri ortaya çıktı. Sektörün hızlı gelişimi, yeni kullanıcıların merkeziyetsiz uygulamaların ekosistemine katılımını sürekli olarak çekmeyi gerektiriyor ve bu durum, ürün deneyimi için daha yüksek talepler ortaya çıkarıyor.
Web3, "önceki hiç kimse tarafından düşünülmemiş" bir ürün biçimi olarak, yalnızca kullanıcı ihtiyaçlarını yenilikçi bir şekilde karşılamakla kalmamalı (fonksiyonel ihtiyaç), aynı zamanda güvenlik ve performans arasında nasıl bir denge kuracağına da dikkat etmelidir (fonksiyonel olmayan ihtiyaç). Doğduğundan beri, insanlar performans sorunlarını çözmeye yönelik çeşitli çözümler önerdiler.
Bu çözümler genel olarak iki kategoriye ayrılabilir: Birincisi, zincir üzeri ölçeklenme çözümleri, örneğin parçalama (sharding) ve yönlendirilmemiş döngü grafiği (DAG); İkincisi ise zincir dışı ölçeklenme çözümleri, örneğin Plasma, Lightning Network, yan zincirler ve Rollups gibi. Ancak bu, zincir üzerindeki işlemlerin hızlı büyüme hızını karşılamaktan çok uzak.
Özellikle 2020 DeFi Yazı ve 2023 yılının sonlarında Bitcoin ekosistemindeki yazıların sürekli patlamasından sonra, sektörde "yüksek performans, düşük ücret" gereksinimlerini karşılamak için yeni performans artırma çözümlerine acil ihtiyaç duyulmaktadır. Paralel Blok zincirleri, böyle bir bağlamda doğmuştur.
Paralel EVM Anlatım Genel Görünümü
Paralel EVM anlatımı, paralel Blok Zinciri alanında iki güçlü rakip arasındaki rekabet ortamının oluştuğunu göstermektedir. Ethereum'un işlem işleme yöntemi seri olup, işlemler sırayla birer birer yürütülmektedir; bu durum kaynakların verimliliğini düşürmektedir. Seri işleme yönteminin paralel işleme yöntemiyle değiştirilmesi, performansta büyük bir artış sağlayacaktır.
Ethereum rakipleri olan Solana, Aptos ve Sui, kendi paralel işleme yetenekleri ile birlikte geliyorlar ve ekosistemleri de oldukça iyi gelişmiş. Tokenlerin piyasa değeri sırasıyla 45 milyar, 3.3 milyar ve 1.9 milyar dolar seviyelerine ulaştı ve bunlar paralel EVM dışı kampı oluşturdu. Karşılaştıkları zorluklara rağmen, Ethereum ekosistemi de geri durmadı ve EVM'ye güç katmak için sıraya girdiler; böylece paralel EVM kampı oluştu.
Bir ticaret platformu, v2 sürüm güncelleme önerisinde "ilk paralel EVM Blok Zinciri" olacağını yüksek sesle iddia etti ve mevcut piyasa değeri 2.1 milyar dolar ve daha büyük bir gelişme bekleniyor. Şu anda pazarlama heyecanı en yüksek olan paralel EVM yeni kamu zinciri Monad, sermaye tarafından oldukça ilgi görüyor ve potansiyeli de küçümsenemez. 1.7 milyon dolarlık piyasa değeriyle, ücretsiz kamu altyapısına sahip L1 zinciri Canto da kendi paralel EVM güncelleme önerisini duyurdu.
Bunun yanı sıra, hala erken aşamada olan birçok L2 projesi, çeşitli L1 zincirlerinin yeteneklerini entegre ederek ekosizyonlar arası performans artışı sağlamaktadır. Neon'un 69 milyon dolarlık dolaşım değerine ulaşmasının dışında, diğer projelerin ilgili verileri eksik. Gelecekte, daha fazla L1 ve L2 projesinin paralel Blok Zinciri alanına katılacağına inanıyorum.
Sadece paralel EVM anlatımının büyük bir pazar büyüme potansiyeli yok, aynı zamanda paralel EVM anlatımının ait olduğu paralel blok zinciri sektörü de büyük bir pazar büyüme potansiyeline sahip, bu nedenle pazarın geleceği oldukça geniş.
Şu anda L1 ve L2 toplam piyasa değeri 7521.23 milyar dolar, paralel blok zinciri piyasa değeri 525.39 milyon dolar ve toplam piyasa değerinin yaklaşık %7'sini oluşturuyor. Bunun içinde paralel EVM anlatımıyla ilgili projelerin piyasa değeri 23.39 milyon dolar ve bu da paralel blok zinciri piyasa değerinin %4'ünü oluşturuyor.
Paralel EVM Hikaye Projeleri Sınıflandırması
Sektörde genellikle blok zinciri ağları 4 katmanlı bir yapıya ayrılır:
Paralel EVM anlatım projeleri esasen monolitik blok zincirleri ve modüler blok zincirleri olarak ikiye ayrılmaktadır. Monolitik blok zincirleri ise L1 ve L2 olarak daha da ayrılmaktadır. Projelerin toplam sayısı ve birkaç ana alanın gelişimi göz önüne alındığında, paralel EVM L1 kamu zincir ekosistemlerinin Ethereum ekosistemine kıyasla hala büyük bir gelişim alanı bulunduğu görülmektedir.
DeFi alanının "hızlı ve düşük maliyetli" talepleri varken, oyun alanının "güçlü gerçek zamanlı etkileşim" talepleri var, her ikisi de yürütme hızı konusunda belirli gereksinimlere sahiptir. Paralel EVM, bu projelere kesinlikle daha iyi bir kullanıcı deneyimi sunacak ve sektörün gelişimini yeni bir aşamaya taşıyacaktır.
L1, yerleşik paralel yürütme yeteneğine sahip yeni bir genel blok zinciri olup, yüksek performanslı bir altyapıdır. L1 ailesinde, Sei v2, Monad ve Canto gibi projeler, paralel EVM tasarlayarak Ethereum ekosistemine uyum sağlamakta ve yüksek işlem hacmi işleme yeteneği sunmaktadır.
L2, diğer L1 zincirlerinin yeteneklerini entegre ederek, ekosistemler arası iş birliği için ölçeklenebilirlik sunar ve rollup'ın belirgin alanıdır. L2 bu grupta, Neon Solana ağı üzerinde bir EVM simülatörüdür, Eclipse ise Solana üzerinde işlemleri gerçekleştirirken EVM'de hesaplama yapar. Lumio, Eclipse'e benzer, tek farkı yürütme katmanını Aptos ile değiştirmesidir.
Yukarıda belirtilen monolitik blok zinciri çözümlerinin dışında, Fuel kendi modüler blok zinciri yaklaşımını sunmuştur. İkinci versiyonunda, kendisini Ethereum rollup işletim sistemi olarak konumlandıracak ve daha esnek, daha kapsamlı modüler yürütme yetenekleri sağlayacaktır.
Fuel, işlemleri gerçekleştirmeye odaklanırken, geri kalan kısmı bir veya daha fazla bağımsız katmanlı Blok Zinciri'ne dış kaynak olarak vererek daha esnek bir kombinasyon sağlar: hem L2 hem de L1 olabilir, hatta yan zincir veya durum kanalı da olabilir. Şu anda Fuel ekosisteminde 17 proje bulunmaktadır ve bu projeler ağırlıklı olarak DeFi, NFT ve altyapı alanlarına odaklanmaktadır.
Ancak yalnızca Orally zincirler arası oracle gerçek uygulamaya sunuldu. Merkeziyetsiz borç verme platformu Swaylend ve sürekli sözleşme ticaret platformu SPARK test ağında yer aldı, diğer projeler ise geliştirme aşamasında.
Paralel EVM Teknoloji Prensibi
Merkeziyetsiz ticaretin gerçekleştirilmesi için, blok zinciri ağının 4 sorumluluğu yerine getirmesi gerekmektedir:
Paralel EVM esas olarak yürütme katmanının performans optimizasyonudur. Bu, birinci katman (L1) çözümü ve ikinci katman (L2) çözümü olmak üzere ikiye ayrılır. L1 çözümü, işlemlerin sanal makinede mümkün olduğunca paralel bir şekilde yürütülmesini sağlamak için işlem paralel yürütme mekanizması getirir. L2 çözümü ise esasen paralelleştirilmiş L1 sanal makinesini kullanarak belirli bir düzeyde "ağ dışı yürütme + ağ içi hesaplama" gerçekleştirir.
Bu nedenle, paralel EVM'nin teknik prensiplerini anlamak için, bunu parçalarına ayırmak gerekir: Önce sanal makinenin (virtual machine) ne olduğunu, ardından paralel yürütmenin (parallel execution) ne olduğunu anlamak.
Sanal Makine
Bilgisayar bilimlerinde sanal makine, bilgisayar sisteminin sanallaştırılması (virtualization) veya taklit edilmesi (emulation) anlamına gelir.
Sanal makineler iki türe ayrılır; biri sistem sanal makinesi (system virtual machine) olarak adlandırılır ve bir fiziksel makineyi birden fazla makineye sanallaştırarak birden fazla işletim sistemi çalıştırmasına olanak tanır, böylece kaynak kullanım verimliliğini artırır. Diğeri ise süreç sanal makinesi (process virtual machine) olarak adlandırılır ve bazı yüksek düzey programlama dilleri için soyutlama sağlar, bu da bu dillerde yazılmış bilgisayar programlarının farklı platformlarda platformdan bağımsız bir şekilde çalışmasına olanak tanır.
JVM, Java programlama dili için tasarlanmış bir süreç sanal makinesidir. Java diliyle yazılmış programlar öncelikle Java bayt koduna (bir ara durumdaki ikili kod) derlenir, Java bayt kodu JVM tarafından yorumlanarak çalıştırılır: JVM, bayt kodunu yorumlayıcıya gönderir, ardından yorumlayıcı bunu farklı makinelerdeki makine koduna çevirir ve sonra makinede çalıştırır.
Blok Zinciri sanal makinesi, işlem sanal makinelerinden biridir. Blok zinciri bağlamında, sanal makine, dağıtık durum makineleri üzerinde sanal bir uygulama anlamına gelir ve sözleşmeleri dağıtık bir şekilde yürütmek, dApp'leri çalıştırmak için kullanılır. JVM ile benzerlik gösteren EVM, Solidity diline yönelik tasarlanmış bir işlem sanal makinesidir; akıllı sözleşmeler önce opcode bayt koduna derlenir, ardından EVM tarafından yorumlanarak yürütülür.
Ethereum dışında ortaya çıkan yeni nesil blok zincirleri, kendi sanal makinelerini gerçekleştirirken daha çok WASM veya eBPF bytecode tabanlı sanal makineleri tercih etmektedir. WASM, küçük boyutlu, hızlı yüklenen, taşınabilir ve sandbox güvenlik mekanizması temelinde olan bir bytecode formatıdır. Geliştiriciler, akıllı sözleşmeleri yazmak için çeşitli programlama dillerini (C, C++, Rust, Go, Python, Java hatta TypeScript gibi) kullanabilir ve ardından WASM bytecode'a derleyip çalıştırabilirler. Belirli bir blok zincirinde gerçekleştirilen akıllı sözleşme de bu bytecode formatını kullanmaktadır.
eBPF'nin öncülü BPF'dir (Berkeley Packet Filter, Berkeley Paket Filtreleyici), başlangıçta ağ veri paketlerini verimli bir şekilde filtrelemek için kullanılıyordu, sonrasında evrim geçirerek eBPF'ye dönüştü ve daha zengin bir komut seti sundu.
Bu, kaynak kodunu değiştirmeden işletim sistemi çekirdeğine dinamik müdahale etme ve davranışını değiştirme imkanı veren devrim niteliğinde bir teknolojidir. Daha sonra bu teknoloji çekirdekten çıkarak kullanıcı alanı eBPF çalışma zamanına dönüştü, bu da yüksek performans, güvenlik ve taşınabilirlik sunar. Solana üzerinde yürütülen akıllı sözleşmeler eBPF bayt koduna derlenir ve kendi Blok Zinciri ağında çalıştırılır.
Diğer L1 halka zincirlerinde, Aptos ve Sui, Move akıllı sözleşme programlama dilini kullanarak özel bayt kodlarına derlenir ve Move sanal makinesinde çalıştırılır. Monad ise EVM opcode bayt koduyla (Shanghai fork) uyumlu bir sanal makine tasarlamıştır.
Paralel Yürütme Mekanizması
Paralel yürütme, bu tür bir tekniktir:
Blok Zinciri ağı, işlem hızını ölçmek için genellikle TPS (saniyede işlenen işlem sayısı) teknik göstergesini kullanır. Paralel yürütme mekanizması karmaşık bir yapıdadır ve geliştiricilerin teknik seviyesini de test eder, açıklaması kolay değildir. Aşağıda bir "banka" örneği üzerinden paralel yürütmenin ne olduğunu açıklayacağız.
Öncelikle, seri yürütme nedir?
Durum 1: Eğer sistemi bir banka olarak düşünürsek, işlem görevlerini yerine getiren CPU'yu da bir banko olarak kabul edersek, seri olarak görevlerin yerine getirilmesi, bu bankanın sadece bir banko ile işlemleri kabul etmesi gibidir. Bu durumda bankaya gelen müşteriler (görevler) yalnızca uzun bir kuyrukta sıraya girebilir ve sırayla işlemlerini yaptırabilirler. Her müşteri için, banko çalışanı, müşterinin işlemlerini yapmak için aynı hareketleri (talimatları yerine getirmek) tekrar etmelidir. Kendi sırası gelene kadar müşteriler yalnızca beklemek zorunda kalır ve bu da işlem süresinin uzamasına neden olur.
Peki, paralel yürütme nedir?
Durum 2: Bu durumda banka yoğunluğu görünce birkaç daha gişe açarak işlemleri hızlandırdı, dört gişe memuru aynı anda işlem yapmaya başladı, böylece hız yaklaşık 4 kat arttı. Bu durumda müşterilerin sıra bekleme süresi de yaklaşık olarak orijinal sürenin 1/4'üne düştü, bankanın işlem hızı arttı.
Eğer koruma yapılmazsa, iki kişi aynı anda başka birine para gönderirse ne tür bir hata meydana gelir?
Durum 3: A, B ve C adında üç kişinin hesaplarında sırasıyla 2 ETH, 1 ETH ve 0 ETH bulunmaktadır. Şimdi A ve B, C'ye sırasıyla 0.5 ETH göndermek istiyor. Tek bir işlem sıralı olarak yürütülen bir sistemde, herhangi bir sorunla karşılaşılmaz (sol ok "\u003c=", defteri okumayı, sağ ok "=\u003e" ise deftere yazmayı belirtir, aynı şekilde devam eder):
A.transfer(C, 0.5):