基于最新的性能指標比較以太坊2.0主網上所有可用的客戶端。
2020年12月以太坊2.0信標鏈發布之后,現在是時候介紹以及比較現有的協議實現了。本文作為該系列文章的第一部分,將按照字母排序比較5個主要客戶端的信標鏈節點性能和資源利用率。
Lighthouse(Rust,SigmaPrime)
Lodestar(TypeScript,ChainSafeSystems)
Nimbus(Nim,Status)
Prysm(Go,PrysmaticLabs)
Teku(Java,ConsenSysQuorum)
以太坊2.0主網基礎設施由三個主要組件組成:
信標鏈是PoS(權益證明)鏈。當前的以太坊1.x鏈(共識為PoW)與以太坊2.0合并之后,信標鏈將成為保障以太坊安全的主干網。
驗證就好比PoS共識中的礦工。所有人都可以質押32ETH成為驗證者,有權提議新區塊、對區塊敲定進行投票,然后獲得獎勵。
某休眠超2年的以太坊ICO參與者質押4032枚ETH:金色財經報道,據Lookonchain監測,一個休眠2.4年的鯨魚地址(0xabc9開頭)在3小時前創建了一個智能合約,并質押了約720萬美元ETH(4032枚)。據悉,該鯨魚是以太坊ICO參與者,在創世區塊獲得了6萬枚ETH。[2023/5/18 15:10:50]
罰沒者正監視驗證者是否作惡,以防攻擊事件發生。任何一名驗證者違反規則,都會受到懲罰并被移出網絡。
需要注意的是,本文主要關注第一點,信標鏈是以太坊2.0網絡的基礎。研究人員可以在Github上找到所有相關的腳本、數據和繪圖,以便進一步分析:
>byz-f/eth2-bench-mainnet
本文將重點列出這些發現
同步指標
第一個也是最令人興奮的問題:同步以太坊2.0信標鏈節點信息需要多長時間,結果見下圖。
在上表中,通過比較客戶端同步相同的slot需要花多少時間來比較其同步進程。在評選結果之前(雖然這不是本文的討論范圍),關于該圖表我們需要知道三件事。
USDC Treasury在以太坊鏈上增發1000萬枚USDC:Whale Alert監測數據顯示,北京時間6月28日05:15,USDC Treasury于以太坊網絡上增發1000萬枚USDC。增發哈希為:0x702bfccf11212290d3ba8f1dd7e63dba12e9eeffc3d2fa68c25383ae09b06771。[2020/6/28]
1.?Prysm(紫色線)有個特殊的地方是,它會連接以太坊1.x節點,從驗證者信息登記處獲取所有ETH存款,然后從Eth1狀態下構建Eth2創世。雖然從安全的角度來看,這一特性蠻有用的,因為用戶不必信任Prysm的開發者以獲得正確的創世狀態,但是這一過程需要些時間。因此,客戶端啟動與同步啟動的時間有明顯的偏移。(#8209)。
2.?由于出現JavaScript堆內存不足的問題,在基準測試時Lodestar(灰色線)出現了崩潰(#2005)。但是,它在10秒后由腳本自動重啟。
3.不可見:在初始同步時,Loderstar還沒有完全驗證所有簽名(#1217)。因此,目前尚不清楚Loderstar與其他客戶端的比較情況。
聲音 | Lane Rettig:降低挖礦獎勵可減少以太坊的增量供給量:1月12日,在“以太坊的窘境與君士坦丁堡保衛戰”為主題的金色直播間內,針對Primitive Ventures創始合伙人Dovey Wan“為何減少ETH挖礦獎勵?”的提問,以太坊核心技術成員、Ewasm團隊創始成員Lane Rettig表示,這次減少挖礦獎勵完全是經濟的問題,若降低挖礦難度而不減少挖礦獎勵,以太幣發行隨之大幅增加,這次的挖礦獎勵降低了其實就等于整個以太坊的增量供給量的釋放減少。[2019/1/13]
上面的圖表中,我們可以看到Lighthouse(橙色線)整體表現出色,Prysm、Teku(綠色線)和Nimbus(藍色線)在保持速度方面表現出色。但是,讓我們再來看看下面的圖表:
在這個圖表中,我們把Prysm客戶端啟動和同步啟動(即第一個信標鏈區塊產生)之間的時間偏移刪去。那么可以看出,單純比較同步速度的話,Prysm的表現略優于Lighthouse,不到兩個小時就能同步完成,而Lighthouse需要兩個半小時。Teku和Nimbus大概需要五個小時。
聲音 | 慢霧安全團隊:區塊鏈技術本身存在安全缺陷 可參考以太坊漏洞賞金計劃實現安全:據火訊財經報道,慢霧安全團隊表示,區塊鏈技術本身存在安全缺陷,研究區塊鏈安全的可以參考以太坊漏洞賞金計劃實現安全,包括:1. 客戶端協議實現安全;2. 網絡安全;3. 節點安全;4. 客戶端應用安全;5. 算法使用安全;6. Solidity 語言安全;7. ENS 安全。[2018/7/2]
值得注意的是,Eth2TypeScript實現(Lodestar使用的語言)并不是僅為了成為運行一個全信標鏈或者驗證者節點的首選客戶端。相反,Lodestar將為以太坊2.0去中心化應用的所有web、瀏覽器和基于插件的組件提供基礎設施。
假設我們知道了客戶端的信標頭區塊當前所在的slot高度,并且可以查看在這60秒之前區塊頭的高度的話,我們就可以通過展示各客戶端每秒同步的slot數(用點表示),來計算過去60秒的移動平均值以比較各客戶端的同步速度。移動平均值超過10分鐘的則用實線表示。
結果與前一個圖表一致。盡管Prysm因為要花時間獲取Eth1-狀態,它仍是同步速度最快的客戶端,每秒同步60slots。Lighthouse緊跟其后,每秒同步46slots。稍顯落后的是Teku(23/秒)和Nimbus(22/秒)。
the Daily Show記者參加以太坊大會 曾諷刺區塊鏈技術:據諷刺新聞節目《每日秀》(the Daily Show)的資深記者Ronny Chieng說,他于上周六在以太坊峰會上與ConsenSys的創始人兼首席執行官約瑟夫?盧賓(Joseph Lubin)和首席執行官卡維塔?古普塔(Kavita Gupta)一起參加了峰會。去年12月,他在節目中與盧賓進行了交談,再次批評了該行業的炒作。他認為,許多業內人士使用了兩年前“發明”的復雜術語和詞匯,來掩飾他們實際上并不知道這項技術將如何改變世界的事實。[2018/5/14]
然而什么是slot呢?在傳統的區塊鏈如比特幣和Eth1鏈中,要么有區塊要么沒有。那么當比較這些鏈上的客戶端性能時,我們會以塊數/秒為單位來比較其同步速度。這跟以slot數/秒為單位有何不同呢?
在以太坊2.0中,每12秒總有一個指定的slot。如果驗證者被分配到一個slot中提議區塊,該slot便有一個區塊。然而,如果驗證者錯過該slot,那么便是個空slot(沒有區塊),但盡管如此,slot的計數將繼續進行。因此,在以太坊2.0中,我們以slots/秒為單位計算同步速度。
在這個圖表中,我們把(時間)這一變量刪去,橫坐標為已同步的slot數,并把上一個圖表中的同步速度映射到該圖表中。所有客戶端都顯示一個趨勢:隨著slot的增加同步速度下降。由于該數據是在以太坊2.0主網上搜集的,我們知道有一條驗證者隊列正排隊等候進入2.0網絡。在撰寫本文時,等候隊列上有13_458名驗證者,按照每天新增900名驗證者的速度來算,需要等待將近15天。
了解了以太坊2.0主網驗證者數量呈線性增長之后,我們可以假設活躍驗證者集的規模變大使得同步速度減緩。
計算資源指標
在上半部分中,我們僅分析了同步指標,選出同步最快的客戶端。但是哪個客戶端在資源利用方面快且高效呢?
上面的圖表中,隨著同步slot的數量增加,比較各客戶端的數據庫容量。值得注意的是,關于完全同步主網節點(420_000slots),Lodestar的占用空間最小,總共只有1.49GiB。Lighthouse(2.98GiB)和Prysm(3.16GiB)的結果也不錯。
我們知道Eth1節點存儲完整的區塊歷史數據。盡管如此,Eth1節點還是移除了歷史狀態以最小化數據庫所需的磁盤空間。Eth2節點與這個概念相當。在磁盤上儲存所有塊的同時,他們會刪除最終狀態。兩者的主要區別為:為了方便起見,應將歷史狀態存儲于時段邊界中(epochboundaries)。目前,Nimbus每32個epoch在時段邊界存儲狀態,然而Lodestar每1024個epoch將狀態記錄在磁盤中。在圖中可以清楚地看出差異。
該圖表相同,但是繪制了同步期間每個客戶端的常駐內存集的大小。從圖中得出,Nimbus客戶端非常高效,在信標鏈主網的整個處理過程僅需要約1GiBRAM。緊接其后的是Lighthouse和Lodestar,均略低于3GiB。
注意:Java分配給Teku的堆外內存不在客戶端開發者的控制范圍之內。JVM對可用內存的消耗量特別大。Teku的指標結果在可用內存總量不同的情況下差異十分大。
最后但同樣重要的一點是,讓我們看一下CPU的利用率。在上面圖表中可以看到客戶端之間的一些有趣差異。
區塊鏈屬于一種高度分層的數據結構。同步區塊鏈數據、驗證區塊以及計算最新狀態,大部分工作都是按序列進行的。因此,客戶端面臨的挑戰便是盡可能地使該進程平行化。圖表顯示的結果與同步速度指標相當,Prysm和Lighthouse領先(數值更高意味著更加有效),而Teku保持良好。
FAQ
Q:文章不錯,但請問為什么你沒有比較流量指標呢?
A:我有比較,只是沒有對所有指標比較都進行評論。你可以在Github上找到沒有進行注釋的點對點、流量指標,想要進一步研究的話訪問:eth2-bench-mainnet/doc/00-plots-uncommented.md
Q:你個人來說推薦哪個客戶端?
A:這個問題很難回答。靠感覺走的話,我選擇Lighthouse,我覺得它的總體用戶體驗、性能、功能以及工具可用性都很好。然而,Prysm仍是最成熟并且是目前最快的客戶端。Teku的使用體驗也很好,我認為所有客戶端都是產品級別的。
Q:信標鏈數據庫大小會超過1TiB嗎?
不,首先,與Eth1相比,信標鏈本身相對較小。驅動數據庫大小的主要因素是信標狀態。然而,與Eth1相比,Eth2并不需要將所有狀態存儲在磁盤中,因為用戶總是可以從本地運行的區塊中重建任何狀態。
除此之外,PoS有敲定這一工序,而PoW沒有(reorgs,51%攻擊)。一旦區塊被敲定,該區塊永遠不會被篡改。敲定的意思是,將來客戶端不用再從創世開始同步鏈的數據,而是獲取最后敲定的epoch的最新鏈頭的數據。
原文鏈接:
https://dev.to/q9/ethereum-2-0-mainnet-clients-3and
來源|dev.to/q9
作者|?AfriSchoedon
在昨晚20:00美盤來臨之時,比特幣價格再次上漲至40000美元高度并上了微博熱搜,也讓更多的人群認識到了比特幣的魅力之處.
1900/1/1 0:00:00本文來自Decrypt,作者:AndrewAsmakovOdaily星球日報譯者|余順遂 摘要: 一個神秘的Dogecoin巨鯨擁有近349億枚DOGE,價值超過12億美元.
1900/1/1 0:00:00Curve有著如同Windows95的粗糙操作界面,特殊的市場定位,精巧的通證設計,沒有水分的鎖倉量.
1900/1/1 0:00:00理解一下期權: 英文單詞是option,即選擇權,選擇在未來的某個時間點干或者不干某件事的權利.
1900/1/1 0:00:00導讀:大多數中央銀行都在從事央行數字貨幣的研究工作,即便在Covid-19大流行期間,央行的工作仍在進行。總體而言,各國央行正進入CBDC參與的更高級階段,從概念研究發展到實踐實驗.
1900/1/1 0:00:00Gate.io全新理財福利產品——“天天理財”已于10月12日正式上線,每天中午12點至少一場理財福利,賺主流幣理財收益.
1900/1/1 0:00:00