如何實現(xiàn)傳統(tǒng)技術(shù)與Insolar區(qū)塊鏈平臺的互操作
互操作性是指不同系統(tǒng)與其他系統(tǒng)協(xié)同工作的能力,而軟件、技術(shù)和通信中的一個大問題是互操作性。 互操作性的實現(xiàn)將允許用戶選擇他們喜歡的系統(tǒng),而不限制使用類似功能的其他技術(shù)通信的能力。 這已經(jīng)成為區(qū)塊鏈領(lǐng)域的一個大問題,因為有幾個競爭平臺沒有考慮到與常規(guī)系統(tǒng)的互操作性,因此目前無法與現(xiàn)有IT系統(tǒng)共享數(shù)據(jù)。
互操作性:基礎(chǔ)知識
互操作性不僅涉及數(shù)據(jù)是否在不同系統(tǒng)之間兼容,而且也涉及它是否可集成以及在不同系統(tǒng)是否可以相互連接。主要問題是如何連接能夠讀取彼此數(shù)據(jù)的系統(tǒng),因此需要一種新的共享標(biāo)準(zhǔn)?;ゲ僮餍砸馕吨蚕順?biāo)準(zhǔn)、促進(jìn)創(chuàng)建與其他技術(shù)兼容的技術(shù)。互操作性實際上促進(jìn)了技術(shù)的采用。當(dāng)共享標(biāo)準(zhǔn)到位時,它使市場確信該產(chǎn)品正被其他人采用。目前,區(qū)塊鏈平臺的創(chuàng)建沒有統(tǒng)一標(biāo)準(zhǔn),也沒有考慮與IT遺產(chǎn)的兼容性,特別是在企業(yè)界。這涉及從實施的共識模型到智能合約代碼以及數(shù)據(jù)存儲方式的所有內(nèi)容??紤]到這一點,Insolar團隊希望創(chuàng)建一個可與傳統(tǒng)IT解決方案互操作的平臺,盡管存在技術(shù)差異。
網(wǎng)絡(luò)效果和可擴展性
設(shè)計可互操作的系統(tǒng)意味著更廣泛的用戶群可以利用該技術(shù)。 這是因為它阻止了專有軟件的鎖定,從而通過減少市場準(zhǔn)入壁壘來增加競爭。 因此,通過互操作性的開放標(biāo)準(zhǔn)鼓勵創(chuàng)新并促進(jìn)技術(shù)的市場開發(fā)。反過來,這可能導(dǎo)致網(wǎng)絡(luò)效應(yīng),因為軟件架構(gòu)可以變得可組合,從而企業(yè)可以選擇哪種軟件最適合給定解決方案,并相應(yīng)地從不同供應(yīng)商編譯架構(gòu)。
Insolar了解到,為了使區(qū)塊鏈采用變得普遍,它需要能夠擴展從而適應(yīng)其他區(qū)塊鏈和傳統(tǒng)系統(tǒng)的用戶。此類系統(tǒng)包括云提供商(如Microsoft Azure或Amazon Web Services),或現(xiàn)有且廣泛使用的IT工具,如用于管理和自動化業(yè)務(wù)不同方面的企業(yè)資源規(guī)劃軟件。這不僅可以打擊更成熟的科技公司的供應(yīng)商鎖定和市場支配地位,而且還可以促進(jìn)企業(yè)采用基于區(qū)塊鏈的技術(shù),而這些技術(shù)以前可能對某個提供商的技術(shù)投入很大,但是在幾個月或幾年后發(fā)現(xiàn)它多余了。創(chuàng)建可與現(xiàn)有IT系統(tǒng)互操作的區(qū)塊鏈的基礎(chǔ)可以分解為不同的方面。一種是考慮通信中使用的語言和數(shù)據(jù)(顯然是最簡單的部分),另一種是考慮通信發(fā)生的較大環(huán)境,以解決區(qū)塊鏈和傳統(tǒng)IT系統(tǒng)之間的差異。
1. 溝通:語言和數(shù)據(jù)
通信歸結(jié)為不同系統(tǒng)的不同部分如何使用稱為協(xié)議的通用規(guī)則相互交互。 這通常通過呼叫和消息傳遞進(jìn)行。 在傳統(tǒng)技術(shù)和現(xiàn)有軟件中,消息傳遞是基于服務(wù)的。 因此,互操作性是關(guān)于不同技術(shù)如何使用不同的消息傳遞系統(tǒng)相互通信和理解。 如果我們考慮一組計算硬件,則存在通信總線,計算機的不同部分(CPU,存儲器等)通過該通信總線彼此通信。 在用于軟件的消息總線中,有一種體系結(jié)構(gòu)允許不同的應(yīng)用程序進(jìn)行通信和協(xié)同工作,但這也允許刪除應(yīng)用程序或添加其他應(yīng)用程序,而不會導(dǎo)致系統(tǒng)崩潰。
可以通過互聯(lián)網(wǎng)的工作方式看到不同協(xié)議交互的一個很好的例子。 四種不同的協(xié)議構(gòu)成了Web服務(wù)器和Web客戶端之間的消息傳遞互連的一部分:1)應(yīng)用協(xié)議,2)傳輸協(xié)議,3)因特網(wǎng)協(xié)議,以及4)網(wǎng)絡(luò)訪問協(xié)議。 協(xié)議套件可確保信息的順利交換,從而可以理解消息。
另一方面,數(shù)據(jù)格式涉及如何收集信息集以及數(shù)據(jù)所有者歸于用戶的非正式規(guī)則。 編譯電子表格時,可以為每個列和行設(shè)置參數(shù),從而設(shè)置格式。 這些規(guī)則由用戶根據(jù)其特定需求和愿望任意設(shè)置,并且對于不同的數(shù)據(jù)集可以因用戶而異。 與上面突出顯示的電子表格示例一致,可以為文檔或輸入語言命名訪問規(guī)則。
2. 溝通:范式
雖然數(shù)據(jù)格式涉及用戶之間的數(shù)據(jù)組合規(guī)則,但范式涉及更大規(guī)模的規(guī)則。 因此,這涉及從發(fā)送數(shù)據(jù)的整個系統(tǒng)應(yīng)用規(guī)則。 這些規(guī)則規(guī)定了交互是如何發(fā)生的以及基于什么基礎(chǔ),即如何檢查請求和響應(yīng)的有效性。 例如,會計范式可以參考由更廣泛的權(quán)威機構(gòu)為所有人設(shè)定的納稅申報的稅法和方法?;?/p>
操作性如何在Insolar中發(fā)揮作用
在Insolar區(qū)塊鏈平臺上,不知道其他合同的內(nèi)部運作情況,就會調(diào)用其他合同。 這意味著它比其他區(qū)塊鏈平臺(如以太坊)花費更少的精力,因為完整的代碼不會隨著每次數(shù)據(jù)更改而存儲。 在Insolar區(qū)塊鏈平臺上,每個合同都是個人的黑匣子,只有相關(guān)的數(shù)據(jù)共享,就像人類的思想和溝通一樣,我們分享我們想要分享的信息,同時將自己的想法留給自己。
可以通過兩種方式與外部傳統(tǒng)系統(tǒng)共享數(shù)據(jù):
· 雙向交換
在Insolar,一切都基于合同,這意味著平臺的每個方面都是合同,它們都相互通信以共享相關(guān)的信息/數(shù)據(jù)。 為了與Insolar區(qū)塊鏈平臺外部的傳統(tǒng)技術(shù)互操作,可以創(chuàng)建一個特殊的智能合約。 此特殊合同與Insolar平臺一樣正常,但為外部各方提供連接的API。 合同與外部系統(tǒng)交互,并充當(dāng)向某個節(jié)點集發(fā)送消息和從某個節(jié)點集接收消息的網(wǎng)關(guān)。
· 觀察者系統(tǒng)
傳統(tǒng)技術(shù)與Insolar區(qū)塊鏈平臺可互操作的第二種方式是通過單向消息接收。 在這種情況下,外部系統(tǒng)無法看到區(qū)塊鏈網(wǎng)絡(luò),但可以通過特殊服務(wù)器注冊更新。 這樣,傳統(tǒng)系統(tǒng)觀察到區(qū)塊鏈平臺的某些更新,并復(fù)制由某個智能合約提供給它的數(shù)據(jù)。 特定網(wǎng)絡(luò)節(jié)點上的某個智能合約被指定為可觀察的。 在這種情況下,觀察者無法將數(shù)據(jù)發(fā)送到Insolar區(qū)塊鏈平臺,而只能接收單向更新。 觀察者系統(tǒng)例可作為儲備數(shù)據(jù)庫。
如上所強調(diào)的,每種機制的使用取決于區(qū)塊鏈網(wǎng)絡(luò)所需的交互,這意味著可以根據(jù)用例使用不同的方法。 如果Insolar區(qū)塊鏈平臺充當(dāng)應(yīng)該在更大的業(yè)務(wù)流程中考慮的事件源,而不改變流程本身的內(nèi)部方面,那么觀察者系統(tǒng)是理想的。
在Insolar積極參與所述業(yè)務(wù)流程的過程中,必須采用積極的雙向模式。 在這種情況下,使用類似oracle的API意味著數(shù)據(jù)不僅可以從外部讀取,還可以在外部創(chuàng)建并寫入?yún)^(qū)塊鏈。在Insolar,我們設(shè)計了我們的區(qū)塊鏈平臺,從頭開始將互操作性作為主要和基本方面。 我們知道,為了使區(qū)塊鏈普及,數(shù)據(jù)和業(yè)務(wù)環(huán)境必須與現(xiàn)有系統(tǒng)交換,為此,需要有一種通用的方法,通過這種方法可以在區(qū)塊鏈平臺之間共享數(shù)據(jù)。 使用一套基于標(biāo)準(zhǔn)的工具和機制的集中式數(shù)據(jù)庫。