近日,2021年度金鍊盟生態大會在深圳成功舉辦,會上,微眾銀行區塊鏈底層平臺研發負責人、FISCO BCOS高階架構師李輝忠釋出了FISCO BCOS v3.0,並介紹了新版本的核心技術特性。
FISCO BCOS v3.0從架構、演算法、產品以及安全可控和隱私計算協同等多方位進行全面升級,滿足數字經濟時代對區塊鏈系統可承載更大規模、更多場景、更廣泛參與的產業應用需求。
v3.0 Github地址:
https://github.com/FISCO-BCOS...
v3.0 文件地址:
https://fisco-bcos-doc.readth...
以下為演講實錄:
大家好,我是FISCO BCOS架構師李輝忠,來自微眾銀行,很榮幸站在這裡,代表社群一眾開發者,向大家介紹全新一代的FISCO BCOS。
去年的大會,我們向大家彙報了下一代FISCO BCOS的構想與技術路線,堅定地認為區塊鏈要承擔起為資料新基建構築堅實互信底座的使命,這是我們一直以來的初心。
在資料新基建大背景下,推動數字產業化和產業數字化升級成為全行業共識。而區塊鏈以其分散式、多中心、傳遞信任等特性,成為資料新基建不可或缺的基礎元件。面對蓬勃發展的數字產業化和產業數字化程式,技術需要承載更大規模應用、更多業務場景和更廣泛行業參與。這些需求的背後,對區塊鏈底層技術提出了更高的要求:全新一代的區塊鏈底層平臺,需要更易治理、更安全、更靈活可擴充套件、更高效好用、更開放的技術體系。
全新發布的FISCO BCOS v3.0歷經社群近一年的通力打磨,在架構、安全、擴充套件性、易用性以及開放協議等各個方面進行了全面升級,下面我將為大家介紹3.0的核心特性。
支撐大規模商用場景落地
v3.0採用全新的微服務架構設計,實現模組化分層治理與平行擴充套件。
總體架構分為5個層次,接入層負責網路,排程層是區塊鏈核心,計算層負責交易驗證,儲存層負責資料儲存,管理層則對整個系統提供釋出、配置、控制等管理服務。通過微服務架構,v3.0實現了網路、排程、計算、儲存、管理分層治理,每層可獨立擴充套件,從而更好地支撐大規模商用場景。
應對海量交易上鍊
在應對海量交易上鍊方面,關鍵技術難點是加大區塊鏈底層系統的吞吐量和降低交易處理時延。我們打個比方,區塊鏈好比一條公路,交易就是路上跑的車輛。這條公路是單行通道還是多行道,是國道還是高速路,其所能承載的通行量大有區別。
v3.0對共識和排程進行了升級,實現流水線共識機制和混合排程,大幅提升系統整體的吞吐量,同時降低時延。流水線機制,將區塊鏈系統最關鍵的交易處理流程拆分為打包、計算、提交三個階段,每個階段內部並行執行,階段之間流水線銜接,充分使用CPU和IO資源利用率。
在計算階段,我們提出業界首創的確定性多合約並行演算法DMC(Deterministic Multi-Contract),可將交易驗證擴充套件到多機並行,每臺機器內還可再用DAG並行,這種混合排程機制可以實現叢集化的交易驗證。
大家可能好奇什麼是DMC?延續剛才的比方,傳統區塊鏈就像一條單行道公路,交易處理就好比車輛從這公路上通行,只能排隊逐一通過,效率極低。如果將道路擴建成多行道,就可以有效提升效率,而多行道上也需要合理排程才能避免造成擁堵,例如在出入口交匯處引入“拉鍊式”通行策略,可以快速有效地緩解堵塞。
確定性多合約並行就是一種類似“拉鍊式”通行的機制,內建在v3.0底層系統中,智慧排程多種合約高效並行處理,且有序處理交匯衝突,從而大幅提升處理效率。
支援全平臺國密接入
在安全方面,FISCO BCOS一直重視國密接入和國產化支援。但是對程式設計師來說一直有個痛點,為了適配國密和國產化,需要在不同平臺、不同作業系統、不同程式語言間逐一適配開發,工作量巨大,而且每次核心邏輯更改都需要相容各平臺/系統/語言,頭髮掉一大把,苦不堪言。
為了更好地在多語言、多終端、全鏈路實現國密接入,v3.0構建了通用國密基礎元件,將國密演算法、國密通訊協議、以及國產密碼機接入協議封裝成通用基礎元件。在此基礎上將區塊鏈相關的網路、群組、賬本、事件等邏輯用C++語言實現成一個獨立共享庫,並封裝提供C語言介面。
基於這套底層C介面,可以快速對接開發不同語言、不同平臺和系統的SDK,且這些多語言SDK無需關心底層邏輯,系統升級只需更新底層共享庫,大大提升研發管理效率,保證了全平臺的國產安全可控。
滿足多樣化業務需求
剛才提到我們需要滿足多樣化場景訴求,這方面我們深有感觸。FISCO BCOS開源社群經過4年發展,生態內的產業角色逐漸豐富,這幾年我們也遇到幾類典型使用者:一類是落地應用的機構使用者,他們基於FISCO BCOS投產落地眾多應用,而且應用的業務量越來越大;一類是運營平臺的機構使用者,他們基於FISCO BCOS構建了BaaS平臺對外提供服務;還有一類是以個人開發者為代表的學習型使用者。
這幾類使用者訴求存在比較大的差異:有大業務體量上鍊的機構需要區塊鏈支撐海量計算和儲存,可以承擔較複雜系統的運維;BaaS平臺的使用者需要更好地區塊連結入、隔離、計費機制等;而學習型使用者則最需要簡單易用、可快速上手的區塊鏈工具。
對於不同使用者的訴求,v3.0採用靈活可擴充套件的開發框架,根據不同場景使用者需求專業定製。我們將釋出3款不同型別的版本,分別是“輕便Air版”、“專業Pro版”和“大容量Max版”。
Air版:沿用FISCO BCOS v2.0的all-in-one設計,區塊鏈底層所有能力打包成一個服務,可供學習型使用者,在入門、開發、測試、POC驗證等場景中快速上手使用。
Pro版:將接入層單獨剝離,區塊鏈核心能力通過多群組方式擴充套件,適用於常規生產業務,特別適合BaaS平臺構建基於群組的區塊鏈底層基礎能力。
Max版:採用前面提到分層擴充套件微服務模式,適用大容量場景。
聚合生態眾力高質量發展
在v3.0研發過程中,開源社群自發構建了多個專項興趣小組,涵蓋了每個關鍵模組,積極參與各環節研發的討論,感謝大家的參與與共建。
值得一提的是,FISCO BCOS v3.0的開源協議全面改為Apache 2.0。和許多軟體一樣,在開源之初,FISCO BCOS從無到有的構建過程中,複用了一些優秀、流行的開源元件,最初採用GPL開源協議也是遵循部分複用元件的開源協議,是對開源社群規則的尊重和恪守。
FISCO BCOS不斷迭代演進,為滿足產業需求,此次v3.0已更新為更寬鬆的開源許可證Apache 2.0,鼓勵社群更開放自由地協作起來。我們會堅持開源道路持續迭代,方便大家基於FISCO BCOS進行更多的技術研究和應用探索,歡迎大家踴躍參與到FISCO BCOS開源社群共建中,聚眾力讓FISCO BCOS更高質量地發展。
以上就是3.0核心特性,開源四年,我們的使命也在隨著國家政策和社會需求的不斷變化進行迭代,而作為資料新基建的互信底座,區塊鏈核心使命是要助力資料要素流通,釋放資料生產力。
我們都知道經典的三個哲學問題:“你是誰?”、“你從哪裡來?”、“你要去哪裡?”,資料要素流通也需要回答三個問題,也就是:“資料屬於誰?”、“資料從哪裡來?”、“資料要去哪裡/做什麼?”。這也就是涉及到資料確權、可信流轉、資料計算的問題。
我們設想,在不久的將來,通過區塊鏈構造信任網、隱私計算構築計算網、分散式身份提供接入網,可以實現三網一體,為資料要素流通提供一種行之有效的解決方案。而在這個過程中,基於FISCO BCOS的區塊鏈技術體系、WeIdentity分散式身份解決方案、DDTP分散式資料傳輸協議、WeDPR-PPC隱私計算解決方案等都是關鍵技術。
未來,我們將持續打造FISCO BCOS技術硬實力,同時聯合生態眾多力量,共同推動區塊鏈技術不斷進步,推動產業創新持續發展。謝謝大家!