91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

您好,歡迎來(lái)電子發(fā)燒友網(wǎng)! ,新用戶(hù)?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>java源碼下載>

超級(jí)賬本架構(gòu)分析

大?。?/span>0.9 MB 人氣: 2017-09-28 需要積分:2

  Fabric整體架構(gòu)

  Fabric為應(yīng)用提供了gRPC API,以及封裝API的SDK供應(yīng)用調(diào)用。應(yīng)用可以通過(guò)SDK訪問(wèn)Fabric網(wǎng)絡(luò)中的多種資源,包括賬本、交易、鏈碼、事件、權(quán)限管理等。應(yīng)用開(kāi)發(fā)者只需要跟這些資源打交道即可,無(wú)需關(guān)心如何實(shí)現(xiàn)。其中,賬本是最核心的結(jié)構(gòu),記錄應(yīng)用信息,應(yīng)用則通過(guò)發(fā)起交易來(lái)向賬本中記錄數(shù)據(jù)。交易執(zhí)行的邏輯通過(guò)鏈碼來(lái)承載。整個(gè)網(wǎng)絡(luò)運(yùn)行中發(fā)生的事件可以被應(yīng)用訪問(wèn),以觸發(fā)外部流程甚至其他系統(tǒng)。權(quán)限管理則負(fù)責(zé)整個(gè)過(guò)程中的訪問(wèn)控制。賬本和交易進(jìn)一步地依賴(lài)核心的區(qū)塊鏈結(jié)構(gòu)、數(shù)據(jù)庫(kù)、共識(shí)機(jī)制等技術(shù);鏈碼則依賴(lài)容器、狀態(tài)機(jī)等技術(shù);權(quán)限管理利用了已有的PKI體系、數(shù)字證書(shū)、加解密算法等諸多安全技術(shù)。底層由多個(gè)節(jié)點(diǎn)組成P2P網(wǎng)絡(luò),通過(guò)gRPC通道進(jìn)行交互,利用Gossip協(xié)議進(jìn)行同步。

  層次化結(jié)構(gòu)提高了架構(gòu)的可擴(kuò)展和可插拔性,方便開(kāi)發(fā)者以模塊為單位進(jìn)行開(kāi)發(fā)。

  超級(jí)賬本Fabric根據(jù)交易過(guò)程中不同環(huán)節(jié)的功能,在邏輯上將節(jié)點(diǎn)角色解耦為Endorser和Committer,讓不同類(lèi)型節(jié)點(diǎn)可以關(guān)注處理不同類(lèi)型的工作負(fù)載。典型的交易處理過(guò)程如下圖所示。

  超級(jí)賬本架構(gòu)分析

  示例交易處理過(guò)程

  在整個(gè)交易過(guò)程中,各個(gè)組件的功能主要為:

  客戶(hù)端(App):客戶(hù)端應(yīng)用使用SDK來(lái)跟Fabric網(wǎng)絡(luò)打交道。首先,客戶(hù)端從CA獲取合法的身份證書(shū)來(lái)加入到網(wǎng)絡(luò)內(nèi)的應(yīng)用通道。發(fā)起正式交易前,需要先構(gòu)造交易提案(Proposal)提交給Endorser進(jìn)行背書(shū)(通過(guò)EndorserClient提供的ProcessProposal(ctx context.Context, signedProp *pb.SignedProposal)(*pb.ProposalResponse,error)接口);客戶(hù)端收集到足夠(背書(shū)策略決定)的背書(shū)支持后可以利用背書(shū)構(gòu)造一個(gè)合法的交易請(qǐng)求,發(fā)給Orderer進(jìn)行排序(通過(guò)BroadcastClient提供的Send(env *cb.Envelope)error接口)處理。客戶(hù)端還可以通過(guò)事件機(jī)制來(lái)監(jiān)聽(tīng)網(wǎng)絡(luò)中消息,來(lái)獲知交易是否被成功接收。命令行客戶(hù)端的主要實(shí)現(xiàn)代碼在peer/chaincode目錄下。

  Endorser節(jié)點(diǎn):主要提供ProcessProposal(ctx context.Context,signedProp *pb.SignedProposal)(*pb.ProposalResponse,error)方法(代碼在core/endorser/endorser.go文件)供客戶(hù)端調(diào)用,完成對(duì)交易提案的背書(shū)(目前主要是簽名)處理。收到來(lái)自客戶(hù)端的交易提案后,首先進(jìn)行合法性和ACL權(quán)限檢查,檢查通過(guò)則模擬運(yùn)行交易,對(duì)交易導(dǎo)致的狀態(tài)變化(以讀寫(xiě)集形式記錄,包括所讀狀態(tài)的鍵和版本,所寫(xiě)狀態(tài)的鍵值)進(jìn)行背書(shū)并返回結(jié)果給客戶(hù)端。注意網(wǎng)絡(luò)中可以只有部分節(jié)點(diǎn)擔(dān)任Endorser角色。主要代碼在core/endorser目錄下;

  Committer節(jié)點(diǎn):負(fù)責(zé)維護(hù)區(qū)塊鏈和賬本結(jié)構(gòu)(包括狀態(tài)DB、歷史DB、索引DB等)。該節(jié)點(diǎn)會(huì)定期地從Orderer獲取排序后的批量交易區(qū)塊結(jié)構(gòu),對(duì)這些交易進(jìn)行落盤(pán)前的最終檢查(包括交易消息結(jié)構(gòu)、簽名完整性、是否重復(fù)、讀寫(xiě)集合版本是否匹配等)。檢查通過(guò)后執(zhí)行合法的交易,將結(jié)果寫(xiě)入賬本,同時(shí)構(gòu)造新的區(qū)塊,更新區(qū)塊中BlockMetadata[2](TRANSACTIONS_FILTER)記錄交易是否合法等信息。同一個(gè)物理節(jié)點(diǎn)可以?xún)H作為Committer角色運(yùn)行,也可以同時(shí)擔(dān)任Endorser和Committer這兩種角色。主要實(shí)現(xiàn)代碼在core/committer目錄下;

  Orderer:僅負(fù)責(zé)排序。為網(wǎng)絡(luò)中所有合法交易進(jìn)行全局排序,并將一批排序后的交易組合生成區(qū)塊結(jié)構(gòu)。Orderer一般不需要跟賬本和交易內(nèi)容直接打交道。主要實(shí)現(xiàn)代碼在orderer目錄下。對(duì)外主要提供Broadcast(srv ab.AtomicBroadcast_BroadcastServer)error和Deliver(srv ab.AtomicBroadcast_DeliverServer)error兩個(gè)RPC方法(代碼在orderer/server.go文件);

  CA:負(fù)責(zé)網(wǎng)絡(luò)中所有證書(shū)的管理(分發(fā)、撤銷(xiāo)等),實(shí)現(xiàn)標(biāo)準(zhǔn)的PKI架構(gòu)。主要代碼在單獨(dú)的fabric-ca項(xiàng)目中。CA在簽發(fā)證書(shū)后,自身不參與到網(wǎng)絡(luò)中的交易過(guò)程。

非常好我支持^.^

(0) 0%

不好我反對(duì)

(0) 0%

超級(jí)賬本架構(gòu)分析下載

相關(guān)電子資料下載

      發(fā)表評(píng)論

      用戶(hù)評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?
      主站蜘蛛池模板: 人人爽人人干 | 成人精品亚洲 | 在线中文字幕一区 | eee在线播放成人免费 | 生活片毛片 | 亚洲激情视频网站 | 夜夜操夜夜摸 | 伊人丁香婷婷综合一区二区 | 国产精品臀控福利在线观看 | 久久亚洲精品国产亚洲老地址 | 五月天婷亚洲 | 欧美特级黄 | 色免费在线观看 | 成人亚洲网站www在线观看 | 久草福利在线播放 | 在线视频一区二区三区四区 | 免费一级毛片在线播放不收费 | www.天天干 | 久久久久久91精品色婷婷 | 婷婷免费高清视频在线观看 | 国产精品欧美激情第一页 | 狠狠操狠狠搞 | 四虎国产一区二区三区 | 1024手机在线观看视频 | 男女午夜特黄毛片免费 | 久久免费国产视频 | 特黄特级高清免费视频毛片 | 成人黄色在线 | 久久久久国产精品四虎 | 亚洲欧美在线视频免费 | 真实女人寂寞偷人视频 | 最新黄色地址 | 色综合久久中文字幕网 | 色偷偷网址 | 色婷婷综合缴情综六月 | h视频网站在线 | 国产午夜一区二区在线观看 | 色综合久久九月婷婷色综合 | 性欧美护士18xxxxhd | 国内久久精品视频 | 国产精品久久福利网站 |