新加坡2020年1月3日 /美通社/ -- MultiVAC在近期進行了可組建性測試,極高的“可組建性”(Composablitiy)是MultiVAC區(qū)塊鏈網絡的亮點之一。“可組建性”是評測底層平臺的一個多維度特性,包括對該平臺現(xiàn)有數(shù)據(jù)、運行規(guī)則、代碼規(guī)范、開發(fā)門檻、存在用戶等維度的考量。簡單來說,如果開發(fā)者能夠便捷使用一個平臺現(xiàn)有的資源,以其熟悉的方式構建更高一層的應用,這個平臺的可組建性就很高。
區(qū)塊鏈的發(fā)展伴隨著可組建性的不斷升級,MultiVAC汲取了各方優(yōu)點,實現(xiàn)了高可組建性。
一、計算器時代
最早出現(xiàn)的區(qū)塊鏈網絡基于UTXO模型設計了一個Script腳本,后續(xù)有不少人都嘗試在Script腳本上面做文章,比如Proof of Existence就利用了OP_RETURN。這種想要提高網絡可組建性的嘗試有很多,但是都被Script腳本限制住了。
從上面這個角度看,最早的區(qū)塊鏈網絡更像電子計算器(而且也只打算成為電子計算器),但對于開發(fā)者來說,一個簡單的計算器是遠遠不夠的,他們需要更自由的框架,去發(fā)揮自己的創(chuàng)意。
二、主機時代
隨后,Vitalik發(fā)了一篇白皮書,他將Script腳本升級成為了完整的可編程語言,自此就誕生了包含圖靈完備虛擬機的區(qū)塊鏈網絡,開發(fā)者可以在分布式網絡中部署并運行任何程序。這就是我們熟知的智能合約,以太坊首次實現(xiàn)了區(qū)塊鏈網絡的高可組建性。
高組建性繼續(xù)催生網絡效應,越來越多的人加入到以太坊網絡之中。但是,以太坊的時代像是計算機的X86時代,雖然在去中心化的網絡之上包含了圖靈完備的虛擬機,但是處理速度仍停留在很低的水平,復雜的應用很難運行下去。擴容問題是目前困擾公鏈系統(tǒng)的第一挑戰(zhàn),沒有拓展性,就無法誕生Killer App,更別提大規(guī)模的區(qū)塊鏈應用了。
三、個人服務器時代
為了突破擴展性瓶頸,一些方案開始舍棄高可組建性,轉而回頭又朝著單一功能架構發(fā)展。
Polkadot 和 Cosmos 是這類提案的代表,它們構建異構區(qū)塊鏈網絡 -- 每一條鏈都是為了單一應用定制的。Polkadot的Substrate和Cosmos SDK都是模塊化的區(qū)塊鏈開發(fā)套件,開發(fā)者得自己全棧開發(fā)不同的“應用鏈”。這個方案乍一聽似乎行得通,但其實難度很大。對于開發(fā)者來說,全棧開發(fā)意味著要從最底層的state machine開始,一直做到頂層的interface,途中還要考慮整條鏈的安全性以及和其它同生態(tài)鏈的數(shù)據(jù)交互。
這些方案在可組建性上相較于以太坊是落后的,原來在以太坊只需要運行單一的虛擬機就可以,但是現(xiàn)在這些鏈需要新的機制來進行跨鏈交流,這一機制還遠遠不夠成熟。
四、云時代 - MultiVAC時代
開發(fā)者可以在云時代的區(qū)塊鏈網絡上自由發(fā)揮,不必擔心吞吐量或者數(shù)據(jù)傳輸限制。要達成這樣的效應,不同的項目采取了不同的方案。但是目前為止最可靠的擴容方案還是分片,即自上而下地改進區(qū)塊鏈網絡的底層協(xié)議和整體架構。
以太坊的2.0版本也提出了自己的分片改造方案,是這一路徑的領頭人之一。但是其分片實現(xiàn)難度很大,原有系統(tǒng)要接受分片改造,涉及到的要素實在過多。即使以太坊擁有強大的開發(fā)者社區(qū),也很難實現(xiàn)這一愿景。另一位此領域的代表項目MultiVAC的優(yōu)勢在于,其系統(tǒng)從一開始就是完整徹底的分片系統(tǒng)。
打個比方,以太坊2.0就像老舊城區(qū)的改造計劃一樣,雖然選對了擴建的方式,但是施工的時候困難重重。有不少古建筑(舊版本功能)拆不得,新的路線得時時繞道,重新規(guī)劃。而MultiVAC則是集所有方案優(yōu)勢于一體的新城,在審視過前人的教訓后,所有的設施都提早為大規(guī)模應用做好了準備,當峰值來臨時不會出現(xiàn)擁堵現(xiàn)象。
MultiVAC是第一個將計算、存儲和傳輸三個層面都妥善解決的全維度分片系統(tǒng)。很多項目僅能夠實現(xiàn)計算分片或者礦工分片,但是隨著承載的交易量越來越大時,網絡中的存儲成本和傳輸壓力仍舊會成為整個系統(tǒng)的最短板。而MultiVAC在實現(xiàn)礦工分片的同時,也用極其巧妙的方式解決了存儲和傳輸?shù)膲毫Α?/p>
在存儲層面,MultiVAC提出了存儲節(jié)點的概念。礦工只需要非常精簡的摘要數(shù)據(jù),就可以對大數(shù)據(jù)集進行增刪改查。而海量數(shù)據(jù)則存儲在存儲節(jié)點,將計算壓力和存儲壓力相分離。礦工節(jié)點只服務于記錄和驗證,而存儲節(jié)點則專門負責存儲海量數(shù)據(jù)(存儲節(jié)點僅提供底層的基礎設施服務,無法擅自對數(shù)據(jù)進行任何操作,關于數(shù)據(jù)的所有產生、修改、刪除等行為均由上層邏輯共識達成,底層存儲服務僅保管確定性的數(shù)據(jù)并向上層供存取功能,保證數(shù)據(jù)的真實和安全)。這樣的設計保證了整體網絡的輕便性,單個節(jié)點的性能瓶頸在分工化的流程中被化解了。
解決了吞吐量瓶頸后的MultiVAC系統(tǒng),成功實現(xiàn)了極高的可組建性。MultiVAC內置的圖靈完備虛擬機實現(xiàn)了超高自由度開發(fā),開發(fā)者不用去學習新的編程語言,可以最大化復用已有的代碼庫來構建新的商業(yè)應用。
MultiVAC在構建公鏈的過程中,不僅僅是普羅米修斯一樣的“盜火者” -- 實現(xiàn)“全維度分片”方案只是其征途的第一步,它不僅顛覆了區(qū)塊鏈2.0時代的淺薄認知(將區(qū)塊鏈分片的層次劃分為網絡分片、交易分片、狀態(tài)分片),而且重新定義并創(chuàng)新了馮諾依曼計算機體系。
MultiVAC作為具有極高可組建性的平臺,可以賦能每一位參與的開發(fā)者。當開發(fā)者可以僅憑自己的創(chuàng)意和開發(fā)能力來撬動更大的資源時,整個社會都會成為這個時代的受益者。