編譯:xiaozou,金色財經
並行執行通常被譽爲區塊鏈擴容和大規模採用的關鍵,可能會吸引「數十億用戶」。
1、爲什麼要關心狀態增長管理?
因爲它會影響開發人員的體驗、用戶支付的費用以及驗證者積累的獎勵,所以,狀態增長管理是所有 L1 的關鍵考慮因素。
對於並行化 VM(虛擬機)來說,重要的是要注意到,只有不更新相同狀態的交易才能並行運行。爲了不發生衝突,交易必須是順序排序的,這意味着如果 50% 的交易具有相同的狀態,並行執行只對其餘 50% 獨立交易有利。
2、並行執行的兩種主要類型
讓我們來看一下並行執行的兩種主要類型:
確定性(Deterministic)類型
通過預定義的訪問列表映射交易依賴關係,VM 跟蹤對存儲和餘額的交易依賴關係,以防止狀態衝突,如 Solana 和 Sui 所示。
樂觀(optimistic)類型
此類並行執行在假定交易不會發生衝突的情況下並行運行或順序再執行所有交易。此類做法不需要訪問列表,從而簡化了開發過程,收穫了 Monad、MegaETH、Aptos 和 Sei 等公鏈的採用。
3、以太坊的順序執行
運行以太坊驗證者(validators)需要至少 8GB RAM 和 2.8 GHz 四核 CPU。然而,EVM 使用單核執行交易表明它並沒有完全進行硬件優化。
EVM 不能並行執行交易主要受以下兩個因素限制:
- 它缺乏一種機制來識別具有共享狀態依賴關係的交易。
- 它使用 RockDB 和 Merkle Patricia Trees 存儲狀態數據,併發讀寫比較複雜。
單獨的並行執行不足以維持網絡使用。狀態增長和狀態訪問是下一個擴容瓶頸。
並行執行的好處可能被誇大了,因爲每區塊只有部分選定交易才能並行執行。這在網絡擁塞期間變得非常明顯,因爲依賴關係重疊會減少加速增益。下圖所示區塊 20000006 的速度提高了 6 倍,而區塊 20434947 的速度只提高了 1.7 倍。
我們來看來自 Ghost 的數據,對 2024 年 6 月初的 20M 區塊到 20.1M 區塊之間的 10 萬個區塊的評估表明,順序依賴關係最小的區塊在並行處理情況下執行速度更快。
4、狀態增長和狀態訪問問題
區塊鏈的狀態包括賬戶、各賬戶餘額、nonces 和合約信息。隨着交易頻繁以及新合約的出現,特別是在像 ETH 這樣複雜的系統中,鏈狀態在持續擴展。
5、狀態管理的經濟焦點
Solana、Sui 或 Aptos 等公鏈使用狀態租金(state rent)等機制,對最佳的狀態增長管理提供經濟激勵。它們通過在交易期間向用戶收取存儲費,防止驗證者和用戶支付更高的存儲成本。
6、狀態管理的技術焦點
大多數技術方法都圍繞着高效的數據庫結構展開,這些數據庫結構支持使用更優的 Merkle 樹結構進行異步讀寫操作。
Delphi Digital 研究員 Muhammad Yusuf 是這樣說的:「並行化是一個已決問題。各鏈將爭相支持更強大的設置和更快的虛擬機。但要真正取得長期成果,就需要強勁的狀態增長和准入管理機制。」
以上就是Delphi Digital:L1原生層擴容,簡析並行執行解決方案的詳細內容,更多請關注php中文網其它相關文章!