欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

當(dāng)前位置:主頁 > 區(qū)塊鏈 > 區(qū)塊鏈技術(shù) > 詳解Solana

一文揭秘區(qū)塊鏈中的速度之王:Solana

2024-06-05 10:59:38 | 來源: | 作者:佚名
Solana和Sui是速度最快的區(qū)塊鏈,日均TPS分別達(dá)到1,504和854,Solana采用PoH機(jī)制和Gulf Stream技術(shù),能夠?qū)崿F(xiàn)低延遲高吞吐量的交易,最高可達(dá)每秒65,000次,它已被證明是處理高頻交易和復(fù)雜智能合約的首選平臺(tái),本文將為大家解密區(qū)塊鏈中的速度之王:Solana

一份性能報(bào)告

CoinGecko 于 5 月 17 日發(fā)布的 《Fastest Chains》報(bào)告中顯示,Solana 是大型區(qū)塊鏈中速度最快的,最高日均真實(shí) TPS 達(dá)到 1,504(已經(jīng)去除了投票交易),Sui 是第二快的區(qū)塊鏈,最高日均真實(shí) TPS 達(dá)到 854,BSC 排名第三,但達(dá)到的真實(shí) TPS 還不到 Sui 的一半。

從這份報(bào)告可以看出,性能最好的 Solana 和 Sui 都是非 EVM 兼容的區(qū)塊鏈,更進(jìn)一步,8 個(gè)非 EVM 兼容區(qū)塊鏈的平均真實(shí) TPS 為 284,17 個(gè) EVM 兼容區(qū)塊鏈和以太坊 Layer2 的平均 TPS 僅為 74,非 EVM 兼容區(qū)塊鏈的性能是 EVM 兼容區(qū)塊鏈的 4 倍左右。

本文將會(huì)探討 EVM 兼容區(qū)塊鏈的性能瓶頸,并揭開 Solana 的性能之道。

EVM 兼容區(qū)塊鏈的性能瓶頸

首先,我們泛化 EVM 區(qū)塊鏈到一般區(qū)塊鏈。一般區(qū)塊鏈想要提升 TPS,一般有如下幾種做法:

  • 提升節(jié)點(diǎn)性能:通過堆硬件資源去提升節(jié)點(diǎn)性能,節(jié)點(diǎn)的硬件要求會(huì)影響去中心化程度,例如以太坊推薦配置,Cpu 4 核,內(nèi)存 16G,網(wǎng)絡(luò)帶寬 25Mbps,普通用戶級(jí)設(shè)備都能達(dá)到,中心化程度較高;Solana 推薦配置相對(duì)更高 Cpu 32 核,內(nèi)存 128G,網(wǎng)絡(luò)帶寬 1Gbps,專業(yè)級(jí)設(shè)備才能達(dá)到,中心化程度一般;
  • 改進(jìn)底層協(xié)議:包括網(wǎng)絡(luò)協(xié)議、密碼學(xué)、存儲(chǔ)等,改進(jìn)區(qū)塊鏈底層協(xié)議不改變區(qū)塊鏈自身的屬性,也不影響區(qū)塊鏈的運(yùn)行規(guī)則,可以直接提升區(qū)塊鏈的性能,但底層技術(shù)關(guān)注度低,目前研究領(lǐng)域沒有重大突破;
  • 擴(kuò)大區(qū)塊:增加區(qū)塊的大小可以包含更多的交易,進(jìn)而提高區(qū)塊鏈的交易吞吐量,例如比特幣現(xiàn)金(BCH)將區(qū)塊從 1 MB 擴(kuò)大到 8 MB,之后擴(kuò)展到 32 MB。但擴(kuò)大區(qū)塊的同時(shí)也會(huì)增大傳播延遲引發(fā)安全威脅, 比如導(dǎo)致分叉可能性增大和 DDoS 攻擊;
  • 共識(shí)協(xié)議:共識(shí)協(xié)議保證了區(qū)塊鏈各個(gè)節(jié)點(diǎn)對(duì)于區(qū)塊鏈的狀態(tài)更新達(dá)成一致,是區(qū)塊鏈最重要的一重安全門,已經(jīng)用于區(qū)塊鏈的共識(shí)機(jī)制有 PoW、PoS、PBFT 等。為了滿足可擴(kuò)展性的需求,一般高性能公鏈都會(huì)改進(jìn)共識(shí)協(xié)議,并結(jié)合自身特殊機(jī)制,例如 Solana 基于 PoH 的共識(shí)機(jī)制,Avalanche 基于雪崩的共識(shí)機(jī)制;
  • 交易執(zhí)行:交易執(zhí)行只關(guān)心單位時(shí)間內(nèi)處理的交易或計(jì)算任務(wù)數(shù)量,以太坊等區(qū)塊鏈采用串行方式執(zhí)行區(qū)塊中的智能合約交易,在串行執(zhí)行中,CPU 的性能瓶頸是非常明顯的,嚴(yán)重制約了區(qū)塊鏈的吞吐量。一般高性能公鏈都會(huì)采用并行執(zhí)行的方式,有的還會(huì)提出更利于并行的語言模型來構(gòu)建智能合約,例如 Sui Move。

對(duì)于 EVM 區(qū)塊鏈而言,由于限定了虛擬機(jī),即交易的執(zhí)行環(huán)境,因此最大的挑戰(zhàn)在于交易執(zhí)行。EVM 主要有兩個(gè)性能問題:

  • 256 位:EVM 設(shè)計(jì)成一臺(tái) 256 位的虛擬機(jī),目的是為了更易于處理以太坊的哈希算法,它會(huì)明確產(chǎn)生 256 位的輸出。然而,實(shí)際運(yùn)行 EVM 的計(jì)算機(jī)則需要把 256 位的字節(jié)映射到本地架構(gòu)來執(zhí)行,一個(gè) EVM 操作碼會(huì)對(duì)應(yīng)多個(gè)本地操作碼,從而使得整個(gè)系統(tǒng)變得非常低效和不實(shí)用;
  • 缺少標(biāo)準(zhǔn)庫:Solidity 中沒有標(biāo)準(zhǔn)庫,必須自己用 Solidity 代碼實(shí)現(xiàn),雖然 OpenZeppelin 使這一情況得到一定改善,他們提供了一個(gè) Solidity 實(shí)現(xiàn)的標(biāo)準(zhǔn)庫(通過將代碼包含在合約中或是以 delegatecall 的形式調(diào)用部署好的合約),但是 EVM 字節(jié)碼的執(zhí)行速度遠(yuǎn)不如預(yù)編譯好的標(biāo)準(zhǔn)庫。

如果站在執(zhí)行優(yōu)化的角度,EVM 還存在兩大不足:

  • 難以做靜態(tài)分析:區(qū)塊鏈中的并行執(zhí)行意味著同時(shí)處理不相關(guān)的交易,把不相關(guān)的交易看作互不影響的事件。實(shí)現(xiàn)并行執(zhí)行主要挑戰(zhàn)是確定哪些交易是不相關(guān)的,哪些是獨(dú)立的,目前部分高性能公鏈會(huì)預(yù)先對(duì)交易做靜態(tài)分析,EVM 的動(dòng)態(tài)跳轉(zhuǎn)(dynamic jumps)機(jī)制導(dǎo)致代碼很難被靜態(tài)分析;
  • JIT 編譯器不成熟:JIT 編譯器(Just In Time Compiler)是現(xiàn)代虛擬機(jī)常用的優(yōu)化手段,JIT 最主要的目標(biāo)是把解釋執(zhí)行變成編譯執(zhí)行。在運(yùn)行時(shí),虛擬機(jī)將熱點(diǎn)代碼編譯成與本地平臺(tái)相關(guān)的機(jī)器碼,并進(jìn)行各種層次的優(yōu)化。目前雖然有 EVM JIT 的項(xiàng)目,但還處于實(shí)驗(yàn)階段,不夠成熟。

因此從虛擬機(jī)的選擇上,高性能公鏈更多采用的是基于 WASM, eBPF 字節(jié)碼或 Move 字節(jié)碼的虛擬機(jī),而非 EVM。例如 Solana 使用自己獨(dú)特的虛擬機(jī) SVM 和基于 eBPF 的字節(jié)碼 SBF。

Fastest Chains:Solana

Solana 因其 PoH(Proof of History )機(jī)制以及低延遲高吞吐量而聞名,是最著名的「以太坊殺手」之一。

PoH 的核心是一個(gè)類似于可驗(yàn)證延遲函數(shù)(VDF)的簡(jiǎn)單哈希算法。Solana 使用一個(gè)序列預(yù)映像抵抗的哈希函數(shù)(SHA-256)實(shí)現(xiàn),該函數(shù)持續(xù)運(yùn)行,用一次迭代的輸出作為下一次的輸入。這個(gè)計(jì)算在每個(gè)驗(yàn)證者的單個(gè)核心上運(yùn)行。

雖然序列生成是順序和單線程的,但驗(yàn)證可以并行進(jìn)行,從而在多核系統(tǒng)上實(shí)現(xiàn)高效的驗(yàn)證。雖然哈希速度存在上界,但硬件改進(jìn)可能提供額外的性能提升。

Solana 共識(shí)流程

PoH 機(jī)制作為可靠且無需信任的時(shí)間源,在網(wǎng)絡(luò)內(nèi)創(chuàng)建可驗(yàn)證且有序的事件記錄。基于 PoH 的計(jì)時(shí)允許 Solana 網(wǎng)絡(luò)以預(yù)定且透明的方式輪換領(lǐng)導(dǎo)者。這種輪換以固定的時(shí)間間隔進(jìn)行,為 4 個(gè)槽(slot),每個(gè)槽目前設(shè)置為 400 毫秒。?這種領(lǐng)導(dǎo)者輪換機(jī)制確保每個(gè)參與的驗(yàn)證者都有公平的機(jī)會(huì)成為領(lǐng)導(dǎo)者,是 Solana 網(wǎng)絡(luò)維護(hù)去中心化和安全的重要機(jī)制,防止任何單個(gè)驗(yàn)證者在網(wǎng)絡(luò)上獲得過多的權(quán)力。

每個(gè)槽的時(shí)間段,領(lǐng)導(dǎo)者提出一個(gè)新塊,其中包含從用戶收到的交易。領(lǐng)導(dǎo)者驗(yàn)證這些交易,打包成一個(gè)區(qū)塊,然后將該塊廣播到網(wǎng)絡(luò)的其余驗(yàn)證者。這種提議和廣播區(qū)塊的過程稱為區(qū)塊生產(chǎn),網(wǎng)絡(luò)中的其他驗(yàn)證者必須對(duì)區(qū)塊的有效性進(jìn)行投票。驗(yàn)證者檢查區(qū)塊的內(nèi)容,確保交易有效并遵守網(wǎng)絡(luò)規(guī)則。如果一個(gè)區(qū)塊獲得了絕大多數(shù)權(quán)益權(quán)重的投票,則該區(qū)塊被視為已確認(rèn)。此確認(rèn)過程對(duì)于維護(hù) Solana 網(wǎng)絡(luò)安全和防止雙花至關(guān)重要。

當(dāng)前領(lǐng)導(dǎo)者的時(shí)間段結(jié)束,網(wǎng)絡(luò)不會(huì)停止或等待區(qū)塊確認(rèn),而是會(huì)移動(dòng)到下一個(gè)時(shí)間段,為后續(xù)領(lǐng)導(dǎo)者提供區(qū)塊生產(chǎn)的機(jī)會(huì),整個(gè)過程重新開始。這種方法可確保 Solana 網(wǎng)絡(luò)保持高吞吐量并保持彈性,即使某些驗(yàn)證者遇到技術(shù)問題或離線也是如此。

Solana 性能之道

由于 Solana 網(wǎng)絡(luò)可以提前確認(rèn)領(lǐng)導(dǎo)者,因此 Solana 不需要公共內(nèi)存池來保存用戶的交易。當(dāng)用戶提交交易時(shí),RPC 服務(wù)器將其轉(zhuǎn)換為 QUIC 數(shù)據(jù)包,并立即將其轉(zhuǎn)發(fā)領(lǐng)導(dǎo)者的驗(yàn)證者。這種方法被稱為Gulf Stream,它允許快速的領(lǐng)導(dǎo)者轉(zhuǎn)換和交易的預(yù)執(zhí)行,減少了其他驗(yàn)證者的內(nèi)存負(fù)載。

Solana 的區(qū)塊數(shù)據(jù)帶入到內(nèi)核空間,然后傳遞給 GPU 以進(jìn)行并行簽名驗(yàn)證,一旦 GPU 上驗(yàn)證了簽名,數(shù)據(jù)就會(huì)傳遞給 CPU 進(jìn)行交易執(zhí)行,最后返回到內(nèi)核空間做數(shù)據(jù)持久化。這種將數(shù)據(jù)劃分為不同硬件部件的多個(gè)處理過程,稱為流水線技術(shù),能最大化硬件利用率,加快區(qū)塊的驗(yàn)證和傳輸速度。

由于 Solana 的交易顯式指定訪問哪些賬戶,Solana 的交易調(diào)度器可以利用讀寫鎖機(jī)制并行執(zhí)行交易。Solana 交易調(diào)度器每個(gè)線程都有自己管理的隊(duì)列,順序且獨(dú)立地處理交易,嘗試鎖定(讀寫鎖)交易的賬戶并執(zhí)行交易,賬戶沖突的交易會(huì)稍后執(zhí)行。這種多線程并行執(zhí)行技術(shù)稱為 Sealevel。

領(lǐng)導(dǎo)者傳播區(qū)塊的過程,將 QUIC 數(shù)據(jù)包(可選地使用糾刪碼)劃分為較小的數(shù)據(jù)包,并將它們分發(fā)給具有分層結(jié)構(gòu)的驗(yàn)證者。這種技術(shù)稱為 Turbine,主要是減少領(lǐng)導(dǎo)者的帶寬使用。

驗(yàn)證者在投票過程中,使用一種針對(duì)分叉投票的共識(shí)機(jī)制。驗(yàn)證者無需等待投票即可繼續(xù)進(jìn)行區(qū)塊生產(chǎn);相反,區(qū)塊生產(chǎn)者會(huì)持續(xù)監(jiān)控有效的新投票,并實(shí)時(shí)將其納入當(dāng)前區(qū)塊中。這種共識(shí)機(jī)制稱為 TowerBFT,通過實(shí)時(shí)合并分叉投票,Solana 確保了更高效、更精簡(jiǎn)的共識(shí)流程,從而提高了整體性能。

針對(duì)區(qū)塊的持久化過程,Solana 開發(fā)了 Cloudbreak 數(shù)據(jù)庫,通過以特定方式對(duì)賬戶數(shù)據(jù)結(jié)構(gòu)進(jìn)行分區(qū),以受益于順序操作的速度并采用內(nèi)存映射文件,從而最大限度地提高 SSD 的效率。

為減輕驗(yàn)證者負(fù)擔(dān),Solana 將數(shù)據(jù)存儲(chǔ)從驗(yàn)證者轉(zhuǎn)移到名為 Archiver 的節(jié)點(diǎn)網(wǎng)絡(luò)。交易狀態(tài)的歷史記錄被拆分為很多碎片,并使用糾刪碼技術(shù)。Archiver 用于存儲(chǔ)狀態(tài)的碎片,但不參與共識(shí)。

總結(jié)

Solana 的愿景是成為一個(gè)其軟件按照硬件的速度擴(kuò)展的區(qū)塊鏈,因此 Solana 充分利用當(dāng)今計(jì)算機(jī)中可用的所有 CPU、GPU 和帶寬能力,以最大化性能,理論最大速度能達(dá)到 65,000 TPS。

正是因?yàn)?Solana 的高性能和拓展性,讓 Solana 成為處理高頻交易和復(fù)雜智能合約的首選區(qū)塊鏈平臺(tái),無論是年初的 DePIN/AI 賽道,還是近期火熱的 Meme 賽道,Solana 都展現(xiàn)出巨大的潛力。

以太坊 ETF 推出后,Solana 也成為下一個(gè) ETF 呼聲最大的加密貨幣,盡管 SEC 仍將 Solana 列為證券,短時(shí)間內(nèi)不會(huì)批準(zhǔn)其他加密貨幣 ETF。但在加密市場(chǎng),共識(shí)即價(jià)值,Solana 的共識(shí)或許正變得和比特幣與以太坊一樣堅(jiān)不可摧。

聲明:文章內(nèi)容不代表本站觀點(diǎn)及立場(chǎng),不構(gòu)成本平臺(tái)任何投資建議。本文內(nèi)容僅供參考,風(fēng)險(xiǎn)自擔(dān)!
Tag:Solana  

你可能感興趣的文章

幣圈快訊

  • 分析師:幣安Alpha交易量連續(xù)幾日下滑或?yàn)榻裢鞬OGE、ZKJ“砸盤”的誘因

    2025-06-15 22:28
    ChainCatcher消息,鏈上分析師AI姨在X平臺(tái)發(fā)文對(duì)今晚KOGE、ZKJ閃崩事件做了進(jìn)一步的分析: 1.為什么要先砸KOGE再砸ZKJ? 最重要的原因或許是ZKJ有合約,他們?cè)诮灰姿_空就可以同步在鏈上砸盤;其次從流動(dòng)性角度看,ZKJ的流動(dòng)性會(huì)更好一些,砸盤也相對(duì)需要花費(fèi)更多資金。 2.為什么八點(diǎn)半就開始砸了,兩個(gè)代幣K線上的表現(xiàn)是延遲的呢? ZKJ和KOGE都是出了名的流動(dòng)性好+幣價(jià)穩(wěn)定,因此LP區(qū)間都極窄,大量砸穿這個(gè)區(qū)間后沒有足夠資金承接賣單,就會(huì)不可避免的閃崩而LP看到幣價(jià)下跌也會(huì)出現(xiàn)恐慌性出逃,惡性循環(huán)使得幣價(jià)進(jìn)一步崩盤;至于那些還沒跑的LP會(huì)怎么樣?都買成ZKJ和KOGE套住。 3.為什么選擇今晚砸盤? Ai姨猜測(cè)Alpha交易量連續(xù)幾天的下滑可能是誘因,巨額LP的退出也是“跑得快”的游戲,尤其是ZKJ和KOGE的holder中信仰者較少,大家都是奔著利息去的,那么大廈的傾塌就只需要一根承重柱的斷裂了。
  • AVAX跌破19美元

    2025-06-15 22:18
    金色財(cái)經(jīng)報(bào)道,行情顯示,AVAX跌破19美元,現(xiàn)報(bào)18.99美元,24小時(shí)跌幅達(dá)到0.52%,行情波動(dòng)較大,請(qǐng)做好風(fēng)險(xiǎn)控制。
  • 分析師:今晚ZKJ和KOGE閃崩或是預(yù)謀已久收割行動(dòng)

    2025-06-15 22:06
    金色財(cái)經(jīng)報(bào)道,據(jù)鏈上數(shù)據(jù)分析師Ai姨(@ai_9684xtpa)發(fā)文分析,今晚ZKJ和KOGE閃崩或是預(yù)謀已久收割行動(dòng),三個(gè)主要地址瞄準(zhǔn)BinanceAlpha背景下兩個(gè)代幣對(duì)刷的天量交易額和流動(dòng)性,在今晚通過“大額撤出流動(dòng)性持續(xù)拋售”的雙重壓力使得ZKJ和KOGE依次崩盤,無一幸免。1、地址0x1A2...2759920:28:21和20:33:15分兩次撤出61130KOGE(約376萬美元)和273017ZKJ(約53.2萬美元)的雙邊流動(dòng)性20:28:58-20:36:57期間將45470KOGE換倉為ZKJ,價(jià)值379.6萬美元,期間KOGE鏈上成交額出現(xiàn)明顯增長(zhǎng)20:30:57-20:59:49期間分批拋售157.3萬枚ZKJ換為USDT和BNB,價(jià)值305.2萬美元,平均賣出價(jià)格1.94美元此時(shí)KOGE和ZKJ均出現(xiàn)了小幅階梯式的下跌,但并未暴跌。2、地址0x078...8bdE720:30:33撤出33651KOGE(約207萬美元)和709203ZKJ(約138萬美元)的雙邊流動(dòng)性20:31:10-20:58:18期間將36814KOGE換倉為ZKJ,價(jià)值226萬美元20:35:15-20:37:34期間拋售100萬枚ZKJ,價(jià)值194.8萬美元,平均賣出價(jià)格1.948美元該地址的“接力式砸盤”才終于推動(dòng)KOGE幣價(jià)出現(xiàn)快速下跌,也就是大家看到的K線幾根連續(xù)的大陰線了。3、地址0x6aD...e2EBb20:41:55收到地址0x078...8bdE7(即上一個(gè)砸盤地址)轉(zhuǎn)移的772759枚ZKJ,價(jià)值150萬美元20:42:28-20:50:16期間清倉77.2萬枚ZKJ第三個(gè)地址主要作用是打配合,在KOGE幣價(jià)崩盤后進(jìn)一步催化ZKJ的下跌,完成兩個(gè)代幣LP和持幣者的收割。
  • 分析師:今晚ZKJ和KOGE閃崩或?yàn)轭A(yù)謀已久的收割行動(dòng)

    2025-06-15 22:05
    ChainCatcher消息,據(jù)鏈上分析師@ai_9684xtpa分析,今晚ZKJ和KOGE的閃崩,或許是一場(chǎng)預(yù)謀已久的收割行動(dòng)。三個(gè)主要地址在今晚通過「大額撤出流動(dòng)性+持續(xù)拋售」的雙重壓力使得ZKJ和KOGE依次崩盤: 1.地址0x1A2...27599 20:28:21和20:33:15分兩次撤出61130KOGE(約376萬美元)和273017ZKJ(約53.2萬美元)的雙邊流動(dòng)性 20:28:58-20:36:57期間將45470KOGE換倉為ZKJ,價(jià)值379.6萬美元,期間KOGE鏈上成交額出現(xiàn)明顯增長(zhǎng) 20:30:57-20:59:49期間分批拋售157.3萬枚ZKJ換為USDT和BNB,價(jià)值305.2萬美元,平均賣出價(jià)格$1.94 此時(shí)KOGE和ZKJ均出現(xiàn)了小幅階梯式的下跌,但并未暴跌 2.地址0x078...8bdE7 20:30:33撤出33651KOGE(約207萬美元)和709203ZKJ(約138萬美元)的雙邊流動(dòng)性 20:31:10-20:58:18期間將36814KOGE換倉為ZKJ,價(jià)值226萬美元 20:35:15-20:37:34期間拋售100萬枚ZKJ,價(jià)值194.8萬美元,平均賣出價(jià)格$1.948 該地址的“接力式砸盤”才終于推動(dòng)KOGE幣價(jià)出現(xiàn)快速下跌 3.地址0x6aD...e2EBb 20:41:55收到地址0x078...8bdE7(即上一個(gè)砸盤地址)轉(zhuǎn)移的772759枚ZKJ,價(jià)值150萬美元 20:42:28-20:50:16期間清倉77.2萬枚ZKJ 第三個(gè)地址主要作用是打配合,在KOGE幣價(jià)崩盤后進(jìn)一步催化ZKJ的下跌,完成兩個(gè)代幣LP和持幣者的收割。 最后:這里提到的三個(gè)地址為主要推動(dòng)地址,實(shí)際還找到了更多幾十萬美元級(jí)別的“配合地址”,這里就不展開描述了,砸盤方式都是類似的。
  • 數(shù)據(jù):BinanceAlpha流動(dòng)性池中KOGE-ZKJ交易對(duì)APR暫報(bào)794.98%

    2025-06-15 22:01
    ChainCatcher消息,據(jù)官方頁面顯示,BinanceAlpha流動(dòng)性池中KOGE-ZKJ交易對(duì)APR暫報(bào)794.98%。
  • 查看更多