NULS 項目成立于2017年9月27日,是一個全球開源社區項目,主網于2018年7月上線。NULS 在創立之初,就致力于讓區塊鏈更簡單。為了達到這個目標,從 NULS1.0開始,NULS 就采用了模塊化的開發方式,想要幫助人們用更簡單的方式進行造鏈,并且實現多鏈并行的跨鏈生態。
但是 NULS1.0 并沒有把模塊化做到極致,為了進一步提高模塊的獨立性,為之后的造鏈和跨鏈打下堅實的基礎,NULS 核心團隊和 NULS CCC ( NULS Code Craft Council )成員,創造性的將微服務架構與區塊鏈結合,設計了 NULS2.0的全新架構。
1. NULS2.0 的模塊化造鏈
1.1. 分層設計
絕大多數有造鏈需求的企業,都是希望使用區塊鏈解決自己的業務問題,就像絕大多數常見的系統一樣,企業并不希望花費過多精力在底層開發上。為了讓企業在造鏈時,只需專注于自己的業務,NULS 采用了分層設計,將業務層從底層中分離出來。
NULS的分層設計總共分為三層,分別是微服務基礎架構層、區塊鏈基礎服務層、DAPP 應用層。
為了讓 NULS 的模塊化更極致,實現模塊的完全獨立,提高企業在造鏈時的定制化程度,NULS 在分層設計中引入了微服務架構。
引入微服務之后,企業已經可以只專注于業務的開發了,但是為了進一步降低開發成本,降低開發的復雜度,NULS為每個服務模塊都提供了服務基礎庫,幫助處理模塊間的通信消息等基礎工作。
1.2. 微服務基礎架構層
第一層是微服務基礎架構層,是 NULS2.0 的核心,被稱作 NULSTAR,是一個區塊鏈微服務底層框架,主要用于實現微服務架構所需要的服務發現、服務注冊、服務通信等功能。
有了 NULSTAR,想要基于微服務架構造鏈的企業,就不再需要關注底層的開發工作,可以直接在 NULSTAR 上開發自己需要的區塊鏈。
為了減少造鏈企業的工作量,NULS 在 NULSTAR 中,還加入了許多常見系統需要用到的通用功能,例如報表、授權、更新器、翻譯器等。這樣企業需要使用相應功能時,就可以直接使用 NULSTAR 提供的功能,不需要自己再進行開發。
1.3. 區塊鏈基礎服務層
NULS2.0 的第二層是區塊鏈基礎服務層,在這一層 NULS使用微服務架構,將區塊鏈系統劃分成了不同的模塊,這些模塊主要分為通用模塊和業務模塊兩種。
通用模塊是所有區塊鏈都需要使用的核心模塊,包括網絡模塊、賬本模塊、賬戶模塊、交易模塊、共識模塊、區塊管理模塊等。業務模塊是企業根據自己的業務需求開發的模塊。
企業使用 NULS 進行模塊化造鏈時,只需要從 NULS 的模塊倉庫中,選擇通用模塊,搭建一條基礎鏈,然后將自己開發的業務模塊與基礎鏈對接即可。
因為 NULS 采用了微服務架構, 所以模塊具有更高的獨立性,模塊間沒有任何代碼上的依賴,每一個模塊都可獨立部署,并對外提供服務。
這對于使用 NULS 進行模塊化造鏈的企業來說,具有極高的商業價值。大型企業的業務往往非常復雜,使用 NULS 造鏈,可以將業務進行很好的拆分,降低系統的復雜度,讓系統維護更簡單;當企業需要對區塊鏈進行迭代時,只需要對相應的模塊進行開發,然后替換掉原來的模塊即可,不會對其他模塊產生任何影響,保證系統的穩定性;當企業需要增加新的業務功能時,只需要開發新的業務模塊,然后添加到系統中即可,這是一種非常簡單的開發方式,能夠幫助企業降低運營成本。除此之外,企業并不會受到 NULS 所使用的開發語言的限制,可以使用任何語言進行業務模塊的開發。
如果企業要定制的區塊鏈,想采用不同于 NULS 的共識機制,這也是可以的,企業只需要開發出自己的共識模塊,然后替換掉 NULS 提供的共識模塊即可。和其他造鏈項目相比,使用 NULS 不會受限于同樣的共識機制,真正做到了高度可定制。
1.4. DAPP 應用層
為了幫助企業建設自己的區塊鏈生態, NULS2.0 還設計了第三層——DAPP 應用層。
想要在基于 NULS 搭建的區塊鏈上開發 DAPP 的開發者,只需要通過 NULSTAR 中的連接器(connector)提供的接口,就可以實現和區塊鏈的對接,輕松的獲取各種服務。并且 NULS 還會在第三層中,為 DAPP 提供基礎應用程序庫,幫助開發者處理網絡消息和通信協議等,讓開發者可以更加專注于 DAPP 的業務開發,進一步降低 DAPP 的開發成本。
2.一鍵造鏈
NULS 認為未來會有越來越多的企業需要使用區塊鏈,用于解決自己的業務問題,盡管 NULS2.0 的模塊化造鏈,已經可以很大程度上降低企業的造鏈成本了,但是依然需要進行業務模塊的開發。對于資金緊缺,技術實力薄弱的中小企業來說,依然存在許多困難。為了更快的推進區塊鏈技術的落地應用,幫助企業解決造鏈難,成本高的問題,NULS 希望通過核心產品鏈工廠,利用圖形化界面,實現“一鍵造鏈”。
鏈工廠基于 NULS 模塊倉庫實現。NULS 模塊倉庫由 NULS 核心團隊和 NULS 技術社區共同維護,內置了 NULS開發的基礎模塊。其他開發者也可以加入到模塊的開發中,開發者只需要將開發的模塊提交到代碼庫中,通過審核之后,就可以放置到模塊倉庫中,供自己和他人使用。隨著模塊倉庫的不斷完善,將會包含更多的通用模塊和業務模塊,這樣 NULS 模塊倉庫將會成為適用于不同行業的基礎開發庫,可以為更多企業提供完善的區塊鏈解決方案。
鏈工廠本身是一條區塊鏈,鏈工廠的節點可以同時運行多條鏈,這樣使用鏈工廠搭建的區塊鏈,就可以直接選擇鏈工廠的節點,運行自己的區塊鏈,省去了搭建區塊鏈節點運行環境的麻煩,同時成本大幅降低。
通過鏈工廠實現造鏈,只需要簡單的4個步驟就可以完成:
第一,你需要在鏈工廠的模塊倉庫中,選擇需要的模塊;
第二,你需要進行基本的系統參數配置,填寫創世塊中的內容;
第三,你需要填寫鏈介紹的和發鏈方式,例如鏈的主要用途,是否選擇鏈工廠的節點來直接運行;
第四,你需要交納保證金,廣播一筆造鏈交易,等到交易確認后,新鏈就搭建成功了。
如果你選擇直接使用鏈工廠的節點,來運行你的區塊鏈,節點會判斷你選擇的模塊是否已經存在,如果不存在,就會從模塊倉庫中先進行下載,下載完畢,你的鏈就會直接運行起來。當然,你也可以選擇,自己創建節點,來運行你的區塊鏈。
通過鏈工廠提供的圖形化界面,企業和開發者只需要經過簡單的配置,就可以簡單高效地實現造鏈,降低了造鏈的成本,節省了大量的開發時間。鏈工廠的“一鍵造鏈”將會加快區塊鏈商業應用的落地,讓我們看到多鏈并行的場景。
3.NULS的跨鏈生態
未來將會出現越來越多的區塊鏈,那么實現鏈與鏈之間互通,讓價值和數據都流通起來就成為一個必須要解決的問題,為了達到這個目的,NULS 提供了自己的跨鏈解決方案。
3.1. NULS 跨鏈解決方案
NULS 的跨鏈基于 NULS 主網實現,所有區塊鏈都只和 NULS 主網通信,交易的驗證由 NULS 主網負責,各平行鏈信任 NULS 主網的驗證結果。
利用 NULS 開發的區塊鏈,如果想要實現跨鏈功能,可以直接選擇 NULS 提供的跨鏈模塊,組裝到系統中。NULS的跨鏈模塊實現了 NULS 跨鏈協議,可以輕松的實現與主網互通,然后通過 NULS 主網將資產轉移到其他平行鏈中。
針對以太坊和比特幣等,不受 NULS 影響的公鏈,想要與NULS 生態中的區塊鏈進行互通,NULS 提供了通用的協議轉換層。協議轉換層可以與以太坊等公鏈互通,又可以與 NULS 主網進行互通,從而間接實現了與 NULS 生態中其他平行鏈的互聯互通。
3.2. 跨鏈生態的形成
通過 NULS 搭建的區塊鏈,由于采用了微服務架構,可以直接通過添加內置 NULS 跨鏈協議的跨鏈模塊,輕松地實現跨鏈,與其他平行鏈實現價值和數據的互通。
對于其他公鏈,通過 NULS 協議轉換層,也可以實現與 NULS 主網的互通,從而間接的與 NULS 生態中的其他平行鏈實現互聯互通。
NULS 核心團隊已于2019年3月28日,發布了 NULS2.0的第一個 Alpha 版本盤古v1.0,目前企業和個人已經可以基于 NULS2.0 進行模塊化造鏈。未來鏈工廠的誕生,將會幫助企業和個人更輕松的實現“一鍵造鏈”,屆時,NULS 生態中,將會出現多鏈并行的場景,而這將會為跨鏈生態的形成打下堅實的基礎。
4.總結
1、 NULS通過微服務架構,從代碼層實現了模塊的解耦,不會受到開發語言的限制,使用NULS搭建的區塊鏈將會具備良好的可擴展性,有利于后續的迭代和維護,降低企業的運營成本;
2、 NULS將基于NULS模塊倉庫,開發核心產品鏈工廠,實現“一鍵造鏈”,幫助企業和開發者高效地搭建自己的區塊鏈;
3、 NULS通過模塊化造鏈,到“一鍵造鏈”,會加速區塊鏈商業應用的落地,NULS生態中將出現多鏈并行的場景,這是NULS跨鏈生態形成的堅實基礎。未來通過NULS的跨鏈解決方案,將會實現萬鏈互聯的NULS跨鏈生態。
評論
查看更多