HyperLedger Fabric 1.4 架構(6.2)


 6.2.1 架構演進

       Fabric架構經歷了0.6版本到1.0版本的演進,架構上進行了重大改進,從0.6版本的結構簡單演進到可擴展、多通道的設計,在架構上有了質的飛躍;從1.0版本以后,架構未做重大調整,到目前為止,最新發布為1.2版本。

視頻教程:https://study.163.com/course/introduction/1210196297.htm
       Fabric 0.6版本架構主要是應用、成員管理和Peer的三角形關系,業務邏輯全部集中在Peer節點上,結構過於簡單,只能用於一些商業場景的驗證。
       Fabric 1.0版本在0.6版本的基礎上做了重大改進和重構,把承載過多業務的Peer節點進行拆分,將區塊鏈的數據維護和共識服務器進行分離,共識服務從Peer節點中完全分離出來,獨立為Orderer節點專門提供共識服務;membership從架構中分離出來形成Fabric-ca單獨組件;在架構中加入了多通道(channel)結構,實現更為靈活的業務適應性,支持更強的配置功能和策略管理功能,進一步增強系統的靈活性和適應性。

圖:架構演進


6.2.2 總體架構
       總體架構核心部分由成員管理(Membership services)、共識服務(Consensus services)和智能合約(Chain-code Services)三部分, 加上安全和加密服務(Security and Crypto Services)貫穿於其他各個組件,應用端通過接口(APIs、Events、SDKs)調用身份(IDENTITY)、賬本(LEDGER)、交易(TRANSACTIONS)、智能合約等信息,架構圖如下:

圖:整體架構

 

  • 成員管理(Membership services):提供成員服務功能,包括注冊、登記、申請證書等功能;考慮到商業應用對安全、隱私、監管、審計和性能的要求,節點、成員只有獲得證書才能加入到區塊鏈網絡中,在1.0版本以后單獨由可插拔的Fabric CA組件來處理。
  • 共識服務(Consensus services):負責分布式賬本的計算和存儲(Distrbuted Ledger)、節點間的共識服務(Ordering Service)、背書驗證管理(Endorsement Validation)以及節點間的網絡傳輸協議(Network Protocol)功能的實現,是區塊鏈的核⼼心組成部分,為區塊鏈的主體功能提供了底層支撐。
  • 智能合約(Chain-code Services):智能合約(SMART CONTRACT)稱為鏈碼(chaincode), 是基於標准的一段代碼,實現具體業務邏輯。鏈碼和底層賬本是解偶的,鏈碼的更新不影響到原有的數據。鏈碼目前可以使用GO、Java、Node.js語言來編寫,通過Docker容器來運行chaincode,安裝和實例化后通過gRPC與同一通道內的Peer節點進行連接。
  • 安全和加密服務(Security and Crypto Services):節點或成員必須被許可才能進入網絡,通過證書、加密和簽名等手段保證安全,通過多通道隔離功能,保證只有參與交易的節點能訪問到數據,其他的節點看不到,真正實現了邏輯與數據的分離。
  • 接口(APIs, Events, SDKs):提供API方式給第三方應用調用,方便二次開發,目前已提供Node.js和Java SDK兩種語言接口;可以通過SDK或CLI方式進行安裝、測試鏈碼,還可以查詢交易狀態和數據等功能,同時通過Events監聽區塊鏈網絡中發現的事件,方便第三應用系統調用和處理。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM