Bottos研究院在BVM研究中投入了很多精力和成本,為了把最新的研究成果與進(jìn)展報(bào)告給開(kāi)發(fā)者社區(qū)的朋友,也方便后期有開(kāi)發(fā)者團(tuán)隊(duì)接入提供方便。連載二對(duì)BVM在智能合約實(shí)際應(yīng)用層面實(shí)現(xiàn)“開(kāi)發(fā)者友好”的優(yōu)勢(shì)和特性。連載三我們來(lái)談一談虛擬機(jī)對(duì)于Bottos公鏈生態(tài)的整體加持和賦能。
4.BVM 對(duì)于Bottos 生態(tài)的影響
Bottos基礎(chǔ)公有鏈以服務(wù)人工智能產(chǎn)業(yè)而設(shè)計(jì),其性能優(yōu)勢(shì)集中體現(xiàn)在數(shù)據(jù)流轉(zhuǎn),以及算力、存儲(chǔ)共享等方面,具有極強(qiáng)的產(chǎn)業(yè)屬性。其原創(chuàng)技術(shù)特性包括智能貨幣設(shè)計(jì)、抽簽式DPOS 算法和引入 AI 算法的分布式存儲(chǔ)等,在數(shù)據(jù)隱私保護(hù)、超大數(shù)據(jù)存儲(chǔ)等方面具有領(lǐng)先的競(jìng)爭(zhēng)優(yōu)勢(shì),而本次BVM的設(shè)計(jì)更是可以使得所有基于Bottos的技術(shù)底層受益。
從現(xiàn)有的情況來(lái)看,BVM更是大大增強(qiáng)了Bottos 主鏈本身的安全性、穩(wěn)定性、可拓展性,以及效能。未來(lái)一段時(shí)間內(nèi),基于Bottos鏈的公鏈開(kāi)發(fā)者可以集成BVM到鏈中,同時(shí)保持原有鏈上API的支持。
引入BVM對(duì)于Bottos生態(tài)有眾多影響。
4.1 優(yōu)化用戶在Bottos主鏈上的資源消耗
前面的兩個(gè)連載已經(jīng)對(duì)BVM可以提升主鏈性能做了論述,用戶在使用基于BVM運(yùn)行的智能合約可以節(jié)省大量鏈上資源的損耗。
目前在Bottos鏈上主要有三類(lèi)資源:CPU、NET 和 RAM:
· CPU 計(jì)算資源(CPU):當(dāng)用戶發(fā)起調(diào)用智能合約這個(gè)動(dòng)作時(shí),區(qū)塊生產(chǎn)者需要根據(jù)智能合約地址查找合約代碼,然后將代碼加載到內(nèi)存中執(zhí)行,這個(gè)過(guò)程需要消耗一定的 CPU 算力。
· 網(wǎng)絡(luò)帶寬資源(NET):當(dāng)用戶發(fā)送一筆交易信息后,區(qū)塊生產(chǎn)者需要將這筆交易打包生成區(qū)塊,然后將區(qū)塊通過(guò)網(wǎng)絡(luò)同步給其它生產(chǎn)者,這個(gè)過(guò)程需要消耗一定網(wǎng)絡(luò)帶寬資源。
· 運(yùn)行內(nèi)存資源(RAM):Bottos 系統(tǒng)中的帳號(hào)信息、智能合約執(zhí)行信息的當(dāng)前的狀態(tài)都是存儲(chǔ)在內(nèi)存中的,這些信息的儲(chǔ)存就需要長(zhǎng)期占用內(nèi)存資源。
當(dāng)前,CPU 主要由合約運(yùn)行消耗的實(shí)際時(shí)間來(lái)結(jié)算,NET 主要與交易的大小相關(guān),而 RAM 主要是基于合約帶來(lái)的狀態(tài)變換所使用的內(nèi)存大小來(lái)決定的。
其中,BVM的出現(xiàn)會(huì)優(yōu)化并減少用戶對(duì)于CPU資源的消耗,現(xiàn)階段這部分資源也是Bottos主鏈設(shè)施上比較稀缺的一種資源,從硬件的角度來(lái)說(shuō),目前的服務(wù)器性能所支持的 RAM 升級(jí)空間還是非常寬裕的,但是對(duì)于 CPU,目前的限制很大。
提升虛擬機(jī)效率,對(duì)基于 Bottos 主鏈生態(tài)的資源優(yōu)化有著重大的意義。
4.2 使得Bottos生態(tài)更具有兼容性
前面的兩篇連載我們都講得是BVM的可拓展性,今天我們主要來(lái)講講Bottos生態(tài)在BVM的可拓展性下的兼容性。
作為一個(gè)去中心化的操作系統(tǒng),當(dāng)出現(xiàn)分歧時(shí)能否達(dá)成共識(shí),在避免硬分叉的前提下保持迭代,將成為一個(gè)至關(guān)重要的問(wèn)題。之前的BTC和ETH都曾出現(xiàn)過(guò)分叉問(wèn)題,BTC因?yàn)樗俾蕯U(kuò)容以及網(wǎng)絡(luò)擁堵,社區(qū)無(wú)法達(dá)成共識(shí),至今已經(jīng)出現(xiàn)了多種分叉幣。而ETH則主要因?yàn)镈AO黑客事件,造成社區(qū)內(nèi)激烈爭(zhēng)論,最終分叉為ETH和ETC兩條鏈。
為了實(shí)現(xiàn)更好的兼容性,Bottos 中設(shè)計(jì)了跨鏈交互和虛擬機(jī)獨(dú)立架構(gòu)機(jī)制。例如,在Bottos系統(tǒng)中設(shè)置了合約虛擬機(jī) ( BVM )。它能夠支持現(xiàn)有的以太坊合約。也就是說(shuō),現(xiàn)有的以太坊平臺(tái)上的應(yīng)用,只需要稍加配置,未來(lái)就能夠在Bottos上面運(yùn)行。
另外一點(diǎn)是,想要在公鏈生態(tài)上開(kāi)發(fā)自己的Dapp很不容易,有很多基礎(chǔ)模塊需要書(shū)寫(xiě),而B(niǎo)ottos公鏈通過(guò)BVM集成了很多底層開(kāi)發(fā)模塊,這樣大大降低了開(kāi)發(fā)者門(mén)檻,再加上Bottos并發(fā)處理速度快,開(kāi)發(fā)不消耗Gas,將會(huì)吸引更多的普通開(kāi)發(fā)者,有助于Bottos平臺(tái)上涌現(xiàn)大量的商業(yè)級(jí)應(yīng)用,快速形成平臺(tái)生態(tài)系統(tǒng)。
4.3 保證主鏈生態(tài)的穩(wěn)定和安全
BVM虛擬機(jī)的引入大大增強(qiáng)了主鏈生態(tài)的穩(wěn)定性和安全性。越是功能強(qiáng)大的智能合約,在實(shí)現(xiàn)邏輯上也就更加復(fù)雜,也就越容易出現(xiàn)邏輯漏洞(Bug)。虛擬機(jī)從安全性、穩(wěn)定性方面,不但阻斷了程序員在編寫(xiě)智能合約代碼錯(cuò)誤而影響到整個(gè)主鏈,而且還防止不法分子運(yùn)行惡意智能合約程序?qū)τ谥麈湹墓?,如果直接運(yùn)行在設(shè)備系統(tǒng)上,可能會(huì)有安全隱患。
因?yàn)槊總€(gè)節(jié)點(diǎn)都要運(yùn)行智能合約進(jìn)行驗(yàn)證,但如果不用虛擬機(jī),而是在機(jī)器上直接運(yùn)行,當(dāng)智能合約開(kāi)發(fā)者疏忽或測(cè)試不充分,而造成智能合約的代碼有漏洞的話,就非常容易被黑客利用并攻擊,這與上文中服務(wù)器虛擬機(jī)安全性有著共通性。
5. Bottos 引領(lǐng)區(qū)塊鏈虛擬機(jī)VM的新標(biāo)準(zhǔn)
我們先來(lái)看下互聯(lián)網(wǎng)的發(fā)展歷程,互聯(lián)網(wǎng)棧層自身的演化:一種像多層蛋糕一樣的協(xié)議和語(yǔ)言,迄今仍在不斷發(fā)展(雖然現(xiàn)在演化速度很慢了),組成了文件傳輸、email、網(wǎng)站等等服務(wù),并提供了真正讓人驚嘆、動(dòng)態(tài)變化而又無(wú)縫轉(zhuǎn)換的用戶體驗(yàn)。
這意味著多樣的架構(gòu)趨向?qū)I(yè)化并產(chǎn)生出動(dòng)態(tài)、有用的棧層的歷程。長(zhǎng)久以來(lái),任何一個(gè)軟件的細(xì)分領(lǐng)域都在謀求技術(shù)標(biāo)準(zhǔn)的整合和統(tǒng)一,這樣的統(tǒng)一并非是由中心化組織去強(qiáng)制推行,而是通過(guò)軟件本身逐漸得到主流市場(chǎng)的認(rèn)可,最后成為事實(shí)上的技術(shù)標(biāo)準(zhǔn)。
對(duì)BVM進(jìn)行劃分并創(chuàng)建自包含的組件讓BVM系統(tǒng)可以有高度可拓展性。此外,通過(guò)一些簡(jiǎn)單的編程工具,用戶可以相對(duì)輕松地構(gòu)建新的延展,這樣,當(dāng)有需要的時(shí)候,我們就可以推出一系列強(qiáng)大的工具進(jìn)行配置、調(diào)試等。
BVM內(nèi)置的分配器足夠模塊化滿足應(yīng)用具體的需求,而不需要?jiǎng)?chuàng)建高內(nèi)存的結(jié)構(gòu)支持,因?yàn)榉峙淦鞅旧聿弧皳碛小彼鼈兪褂玫膬?nèi)存。同步這些分配器的生命周期就不需要復(fù)制它們,這就允許了用戶可根據(jù)需要進(jìn)行獨(dú)立于內(nèi)容的WebAssembly模塊集成而不會(huì)遭受任何性能上的損失。
以上種種都表明BVM具有所有成為智能合約運(yùn)行環(huán)境標(biāo)準(zhǔn)的素質(zhì)。 目前,BVM的性能在不斷優(yōu)化提高,我們研究員以及我們的社區(qū)都在不斷創(chuàng)建更多強(qiáng)大的工具包和庫(kù),不斷努力幫助開(kāi)發(fā)者實(shí)現(xiàn)更大的目標(biāo)。
我們相信當(dāng)終端用戶和企業(yè)能夠通過(guò)應(yīng)用感受到區(qū)塊鏈帶來(lái)的好處的時(shí)候,區(qū)塊鏈技術(shù)的應(yīng)用終將被帶動(dòng)。
BVM我們會(huì)不斷和社區(qū)一起工作,改進(jìn)和開(kāi)發(fā)BVM來(lái)支持這些努力。
責(zé)任編輯;zl
評(píng)論