Rumah >web3.0 >Satu artikel mendedahkan raja kelajuan dalam rantaian blok: Solana

Satu artikel mendedahkan raja kelajuan dalam rantaian blok: Solana

WBOY
WBOYasal
2024-06-12 17:42:261173semak imbas

Laporan prestasi

Laporan "Rantaian Terpantas" yang dikeluarkan oleh CoinGecko pada 17 Mei menunjukkan bahawa Solana adalah yang terpantas di antara rantaian blok besar, dengan purata TPS sebenar harian tertinggi mencapai 1,504 (urus niaga pengundian telah dialih keluar), Sui adalah yang kedua terpantas blockchain, dengan purata harian tertinggi TPS sebenar mencapai 854. BSC menduduki tempat ketiga, tetapi TPS sebenar yang dicapai adalah kurang daripada separuh daripada Sui.

Satu artikel mendedahkan raja kelajuan dalam rantaian blok: Solana

Dapat dilihat daripada laporan ini bahawa Solana dan Sui yang berprestasi terbaik adalah kedua-dua blok sekatan bukan EVM Tambahan pula, purata TPS sebenar bagi 8 blok serasi bukan EVM ialah 284 dan 17 EVM Purata TPS bagi. blok serasi serasi dan Lapisan Ethereum 2 hanya 74, dan prestasi blok sekatan tidak serasi EVM adalah kira-kira 4 kali ganda blok serasi EVM.

Artikel ini akan meneroka kesesakan prestasi blok blok serasi EVM dan mendedahkan kaedah prestasi Solana.

Kesempitan prestasi rantaian serasi EVM

Satu artikel mendedahkan raja kelajuan dalam rantaian blok: Solana

Pertama, kami umumkan rantaian blok EVM kepada rantaian am. Secara umumnya, jika blockchain ingin menambah baik TPS, secara amnya terdapat kaedah berikut:

  • Meningkatkan prestasi nod: Meningkatkan prestasi nod dengan menyusun sumber perkakasan Keperluan perkakasan nod akan mempengaruhi tahap desentralisasi, seperti konfigurasi yang disyorkan daripada Ethereum, teras CPU 4, memori 16G, dan lebar jalur rangkaian 25Mbps, yang boleh dicapai oleh peralatan peringkat pengguna biasa, dengan tahap pemusatan yang tinggi Solana mengesyorkan konfigurasi yang lebih tinggi daripada 32 teras CPU, memori 128G dan lebar jalur rangkaian; sebanyak 1Gbps, yang hanya boleh dicapai dengan peralatan peringkat profesional, dengan tahap pemusatan yang tinggi
  • Tingkatkan protokol asas: termasuk protokol rangkaian, kriptografi, storan, dll. Memperbaiki protokol asas blok tidak berubah. sifat-sifat rantaian itu sendiri, dan ia juga tidak menjejaskan peraturan pengendalian rantaian Ia secara langsung boleh meningkatkan prestasi prestasi rantaian tersebut, tetapi teknologi asas telah mendapat sedikit perhatian, dan pada masa ini tiada kejayaan besar dalam bidang penyelidikan ;
  • Kembangkan blok: Meningkatkan saiz blok boleh merangkumi lebih banyak urus niaga, dengan itu meningkatkan daya pemprosesan urus niaga blok tersebut, seperti Bitcoin Cash (BCH) ) mengembangkan saiz blok daripada 1 MB kepada 8 MB dan kemudian kepada 32 MB . Walau bagaimanapun, memperluaskan blok juga akan meningkatkan kelewatan penyebaran dan menyebabkan ancaman keselamatan, seperti meningkatkan kemungkinan serangan fork dan DDoS
  • Protokol konsensus: Protokol konsensus memastikan setiap nod blokchain mencapai persetujuan mengenai kemas kini status; blockchain , adalah pintu keselamatan terpenting bagi blockchain Mekanisme konsensus yang telah digunakan dalam blockchain termasuk PoW, PoS, PBFT, dll. Untuk memenuhi keperluan kebolehskalaan, rantaian awam berprestasi tinggi secara amnya akan menambah baik protokol konsensus dan menggabungkannya dengan mekanisme khas mereka sendiri, seperti mekanisme konsensus berasaskan PoH Solana dan mekanisme konsensus berasaskan longsoran Avalanche
  • Pelaksanaan transaksi: Pelaksanaan transaksi hanya mengambil berat tentang masa unit Bilangan urus niaga atau tugas pengkomputeran yang diproses dalam blok Rantaian seperti Ethereum menggunakan kaedah bersiri untuk melaksanakan transaksi kontrak pintar dalam blok Dalam pelaksanaan bersiri, kesesakan prestasi CPU adalah sangat jelas serius menyekat kecekapan rangkaian. Secara amnya, rantaian awam berprestasi tinggi akan menggunakan pelaksanaan selari, dan sesetengahnya akan mencadangkan model bahasa yang lebih kondusif kepada keselarian untuk membina kontrak pintar, seperti Sui Move.

Untuk blockchain EVM, cabaran terbesar terletak pada pelaksanaan transaksi disebabkan oleh had mesin maya, iaitu persekitaran pelaksanaan transaksi. EVM mempunyai dua isu prestasi utama:

  • 256-bit: EVM direka sebagai mesin maya 256-bit untuk memudahkan pemprosesan algoritma pencincangan Ethereum, yang secara eksplisit akan menghasilkan output 256-bit. Walau bagaimanapun, komputer yang sebenarnya menjalankan EVM perlu memetakan bait 256-bit ke seni bina tempatan untuk pelaksanaan opcode One EVM akan sepadan dengan berbilang opcode tempatan, menjadikan keseluruhan sistem sangat tidak cekap dan tidak praktikal
  • Pustaka Standard yang tiada perpustakaan dalam Solidity, dan anda mesti melaksanakannya sendiri dengan kod Solidity Walaupun OpenZeppelin telah memperbaiki keadaan ini sedikit sebanyak, mereka menyediakan perpustakaan standard untuk pelaksanaan Solidity (dengan memasukkan kod dalam kontrak atau memanggilnya dalam bentuk delegatecall Deployed contracts. ), tetapi kelajuan pelaksanaan kod bait EVM jauh lebih rendah daripada pustaka standard yang telah dikompilasi.

Dari perspektif pengoptimuman pelaksanaan, EVM masih mempunyai dua kelemahan utama:

  • Sukar untuk melakukan analisis statik: Pelaksanaan selari dalam rantaian blok bermaksud memproses transaksi yang tidak berkaitan pada masa yang sama, menganggap transaksi yang tidak berkaitan sebagai peristiwa yang tidak menjejaskan satu sama lain. Cabaran utama dalam mencapai pelaksanaan selari adalah untuk menentukan urus niaga yang tidak relevan dan yang bebas Pada masa ini, beberapa rantaian awam berprestasi tinggi melakukan analisis statik pada urus niaga terlebih dahulu Mekanisme lompatan dinamik EVM menjadikannya sukar untuk menganalisis kod secara statik. ;
  • JIT compiler tidak matang: JIT compiler (Just In Time Compiler) ialah kaedah pengoptimuman yang biasa digunakan dalam mesin maya moden. Pada masa jalanan, mesin maya menyusun kod panas ke dalam kod mesin yang berkaitan dengan platform tempatan dan melakukan pelbagai peringkat pengoptimuman. Walaupun pada masa ini terdapat projek EVM JIT, ia masih dalam peringkat percubaan dan belum cukup matang.

Jadi dari segi pemilihan mesin maya, rangkaian awam berprestasi tinggi lebih kerap menggunakan mesin maya berdasarkan WASM, eBPF bytecode atau Move bytecode dan bukannya EVM. Solana, sebagai contoh, menggunakan mesin maya uniknya sendiri SVM dan kod bait berasaskan eBPF SBF.

Rantaian Terpantas: Solana

Satu artikel mendedahkan raja kelajuan dalam rantaian blok: Solana

Solana terkenal dengan mekanisme PoH (Bukti Sejarah) dan kependaman rendah serta daya pemprosesan yang tinggi Ia adalah salah satu "pembunuh Ethereum" yang paling terkenal.

Pada terasnya, PoH ialah algoritma cincang mudah yang serupa dengan Fungsi Kelewatan Boleh Disahkan (VDF). Solana dilaksanakan menggunakan fungsi cincang tahan praimej jujukan (SHA-256) yang berjalan secara berterusan, menggunakan output satu lelaran sebagai input untuk seterusnya. Pengiraan ini dijalankan pada teras tunggal bagi setiap pengesah.

Satu artikel mendedahkan raja kelajuan dalam rantaian blok: Solana

Walaupun penjanaan jujukan adalah berurutan dan berbenang tunggal, pengesahan boleh dilakukan secara selari, membolehkan pengesahan yang cekap pada sistem berbilang teras. Walaupun terdapat had atas pada kelajuan cincang, penambahbaikan perkakasan mungkin memberikan peningkatan prestasi tambahan.

Satu artikel mendedahkan raja kelajuan dalam rantaian blok: Solana

Proses Konsensus Solana

Mekanisme PoH berfungsi sebagai sumber masa yang boleh dipercayai dan tidak boleh dipercayai, mencipta rekod peristiwa yang boleh disahkan dan teratur dalam rangkaian. Pemasaan berasaskan PoH membolehkan rangkaian Solana menggilirkan pemimpin secara berjadual dan telus. Putaran ini berlaku pada selang tetap 4 slot, setiap slot pada masa ini ditetapkan kepada 400 milisaat. Mekanisme penggiliran pemimpin ini memastikan bahawa setiap pengesah yang mengambil bahagian mempunyai peluang yang saksama untuk menjadi peneraju dan merupakan mekanisme penting bagi rangkaian Solana untuk mengekalkan desentralisasi dan keselamatan, menghalang mana-mana pengesah tunggal daripada memperoleh terlalu banyak kuasa pada rangkaian.

Satu artikel mendedahkan raja kelajuan dalam rantaian blok: Solana

Setiap tempoh slot, ketua mencadangkan blok baharu yang mengandungi transaksi yang diterima daripada pengguna. Pemimpin mengesahkan transaksi ini, membungkusnya ke dalam blok, dan kemudian menyiarkan blok itu kepada pengesah rangkaian yang tinggal. Proses cadangan dan penyiaran blok ini dipanggil pengeluaran blok, dan pengesah lain dalam rangkaian mesti mengundi kesahihan blok. Pengesah menyemak kandungan blok untuk memastikan transaksi adalah sah dan mematuhi peraturan rangkaian. Sesuatu blok dianggap disahkan jika ia menerima undi majoriti daripada berat kepentingan. Proses pengesahan ini penting untuk mengekalkan keselamatan rangkaian Solana dan mencegah perbelanjaan berganda.

Apabila tempoh masa pemimpin semasa tamat, rangkaian tidak akan berhenti atau menunggu pengesahan blok, tetapi akan beralih ke tempoh masa seterusnya, memberikan pemimpin seterusnya peluang untuk menghasilkan blok, dan keseluruhan proses bermula semula. Pendekatan ini memastikan bahawa rangkaian Solana mengekalkan daya pemprosesan yang tinggi dan kekal berdaya tahan, walaupun sesetengah pengesah mengalami masalah teknikal atau pergi ke luar talian.

Petua Prestasi Solana

Memandangkan rangkaian Solana boleh mengesahkan pemimpin lebih awal, Solana tidak memerlukan kumpulan memori awam untuk menyimpan transaksi pengguna. Apabila pengguna menyerahkan transaksi, pelayan RPC menukarnya menjadi paket QUIC dan segera memajukannya kepada pengesah ketua. Pendekatan ini dipanggil Gulf Stream, dan ia membolehkan penukaran pemimpin pantas dan pra-pelaksanaan transaksi, mengurangkan beban memori pada pengesah lain.

Data blok Solana dibawa ke ruang kernel, dan kemudian dihantar ke GPU untuk pengesahan tandatangan selari Setelah tandatangan disahkan pada GPU, data akan dihantar ke CPU untuk pelaksanaan transaksi, dan akhirnya dikembalikan ke kernel. ruang untuk kegigihan data. Proses pemprosesan berbilang membahagikan data kepada komponen perkakasan yang berbeza, yang dipanggil teknologi saluran paip, boleh memaksimumkan penggunaan perkakasan dan mempercepatkan pengesahan dan penghantaran blok.

Oleh kerana urus niaga Solana secara jelas menyatakan akaun mana yang boleh diakses, penjadual transaksi Solana boleh menggunakan mekanisme kunci baca-tulis untuk melaksanakan urus niaga secara selari. Setiap urutan penjadual urus niaga Solana mempunyai baris gilir terurusnya sendiri, memproses urus niaga secara berurutan dan bebas, percubaan untuk mengunci (kunci baca-tulis) akaun transaksi dan melaksanakan urus niaga dengan konflik akaun akan dilaksanakan kemudian. Teknik pelaksanaan selari berbilang benang ini dipanggil Sealevel.

Proses ketua menyebarkan blok, membahagikan paket QUIC (secara pilihan menggunakan pengekodan pemadaman) kepada paket yang lebih kecil dan mengedarkannya kepada pengesah dengan struktur hierarki. Teknik ini, dipanggil Turbin, pada asasnya mengurangkan penggunaan lebar jalur peneraju.

Semasa proses pengundian, pengesah menggunakan mekanisme konsensus untuk undian bercabang. Pengesah tidak perlu menunggu undian untuk meneruskan pengeluaran blok sebaliknya, pengeluar blok sentiasa memantau undian baharu yang sah dan memasukkannya ke dalam blok semasa dalam masa nyata. Mekanisme konsensus ini dipanggil TowerBFT, dan dengan menggabungkan undian garpu dalam masa nyata, Solana memastikan proses konsensus yang lebih cekap dan diperkemas, dengan itu meningkatkan prestasi keseluruhan.

Untuk proses kegigihan blok, Solana membangunkan pangkalan data Cloudbreak untuk memaksimumkan kecekapan SSD dengan membahagikan struktur data akaun dengan cara khusus untuk mendapat manfaat daripada kelajuan operasi berjujukan dan menggunakan fail dipetakan memori.

Untuk mengurangkan beban pada pengesah, Solana memindahkan storan data daripada pengesah ke rangkaian nod yang dipanggil Arkib. Sejarah status transaksi dibahagikan kepada banyak serpihan dan teknologi pengekodan pemadaman digunakan. Arkib digunakan untuk menyimpan serpihan keadaan, tetapi tidak mengambil bahagian dalam konsensus.

Ringkasan

Visi Solana adalah untuk menjadi rantaian blok yang perisiannya berskala pada kelajuan perkakasan, jadi Solana memanfaatkan sepenuhnya semua keupayaan CPU, GPU dan lebar jalur yang tersedia dalam komputer hari ini untuk memaksimumkan prestasi dan kelajuan maksimum teori yang boleh dilakukan. mencapai 65,000 TPS.

Tepatnya kerana prestasi tinggi dan kebolehskalaan Solana yang Solana telah menjadi platform rantaian pilihan untuk mengendalikan urus niaga frekuensi tinggi dan kontrak pintar yang kompleks, sama ada trek DePIN/AI pada awal tahun atau Meme hangat baru-baru ini trek, Solana Semua menunjukkan potensi yang besar.

Selepas pelancaran Ethereum ETF, Solana juga telah menjadi mata wang kripto dengan paling banyak panggilan untuk ETF seterusnya Walaupun SEC masih menyenaraikan Solana sebagai keselamatan, ETF mata wang kripto lain tidak akan diluluskan dalam jangka pendek. Tetapi dalam pasaran crypto, konsensus adalah nilai, dan konsensus Solana mungkin menjadi tidak dapat dihancurkan seperti Bitcoin dan Ethereum.

Atas ialah kandungan terperinci Satu artikel mendedahkan raja kelajuan dalam rantaian blok: Solana. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn