3月24日,FISCO BCOS开源社区举办了《FISCO BCOS v3.0 2022年技术路线图重磅首发》线上Meetup。本次活动中,微众银行区块链底层平台研发负责人、FISCO BCOS高级架构师李辉忠发布FISCO BCOS v3.0 2022年技术发展路线图,并进行详细阐述。
我们整理了直播的精彩内容,供大家交流学习,此前错过的小伙伴也可通过下方视频,观看直播回放,欢迎添加【小助手微信:FISCOBCOS010】参与v3.0各阶段研发。
以下内容根据嘉宾分享整理:
大家好,感谢观看直播,我在直播间看到了很多熟悉的面孔。今晚我会跟大家分享FISCO BCOS一路走来的研发历程、FISCO BCOS开发团队正在做什么、v3.0在2022年的研发技术路线,以及社区开发者如何参与v3.0研发共建。
从v1.0到v3.0, FISCO BCOS的技术演进之路
2017年,我们发布了首个金融级的开源联盟链底层平台FISCO BCOS,并持续在工具、文档、平台兼容性等方面进行升级迭代。
2019年,我们对整个平台的技术架构进行全新升级,推出v2.0,以更好地支持区块链业务日益多样化的需求。该版本在可扩展性、性能、易用性、隐私隔离等方面均取得突破性进展,例如:支持多群组架构,用于克服系统吞吐能力的瓶颈;支持分布式存储,让节点可将数据存储在远端分布式系统中,克服了本地化数据存储的诸多限制。
v2.0在性能上亦取得大幅提升,在2019年中国信息通信研究院的可信区块链评测中,单链TPS超过2万。
在数据新基建大背景下,推动数字产业化和产业数字化升级成为全行业共识。技术需要承载更大规模应用、更多业务场景和更广泛行业参与。这些需求的背后,对区块链底层技术提出了更高的要求。在2021年度金链盟生态大会上,我们正式发布了全新FISCO BCOS v3.0。
FISCO BCOS v3.0核心特性
v3.0从架构、算法、产品以及安全可控和隐私计算协同等多方位进行全面升级,这些升级有助于平台性能大幅提升。
- 支撑大规模商用场景落地
v3.0采用全新的微服务架构设计,实现模块化分层治理与平行扩展。总体架构分为5个层次,接入层负责网络,调度层是区块链内核,计算层负责交易验证,存储层负责数据存储,管理层则对整个系统提供发布、配置、控制等管理服务。
通过微服务架构,v3.0实现了网络、调度、计算、存储、管理分层治理,每层可独立扩展。
- 应对海量交易上链
v3.0对共识和调度进行了升级,实现流水线共识机制和混合调度,大幅提升系统整体的吞吐量,同时降低时延。流水线机制,将区块链系统最关键的交易处理流程拆分为打包、计算、提交三个阶段,每个阶段内部并行执行,阶段之间流水线衔接,充分使用CPU,提高IO资源利用率。
在计算阶段,我们提出业界首创的确定性多合约并行算法DMC(Deterministic Multi-Contract),可将交易验证扩展到多机并行,每台机器内还可再用DAG并行,这种混合调度机制可以实现集群化的交易验证。
- 支持全平台国密接入
在安全方面,FISCO BCOS一直重视国密接入和国产化支持,为了更好地在多语言、多终端、全链路实现国密接入,v3.0构建了通用国密基础组件,将国密算法、国密通信协议、以及国产密码机接入协议封装成通用基础组件。
在此基础上,v3.0将区块链相关的网络、群组、账本、事件等逻辑用C++语言实现成一个独立共享库,并封装提供C语言接口。基于这套底层C接口,可以快速对接开发不同语言、不同平台和系统的SDK,且这些多语言SDK无需关心底层逻辑。
- 满足多样化业务需求
v3.0采用灵活可扩展的开发框架,根据不同场景的用户需求专业定制,推出了3款不同类型的版本。
Air轻便版:沿用FISCO BCOS v2.0的all-in-one设计,区块链底层所有能力打包成一个服务,可供学习型用户,在入门、开发、测试、POC验证等场景中快速上手使用。
Pro专业版:适合于常规生产业务,设计时将网络功能拆分到RPC和Gateway,前者负责与SDK的交互,后者负责跨机构节点间的交互;通过将接入层单独剥离,区块链核心能力通过多群组方式扩展,特别适合BaaS平台构建基于群组的区块链底层基础能力。
Max大容量版:定位是满足大量数据上链业务需求,适用大容量场景,设计时在Pro版本的基础上,将节点服务拆分成多个组件,并将可平行扩展的部分独立出去。
重磅首发:2022年技术路线图
目前v3.0处于rc阶段,现已发布两个rc版本,预计在发行第四个rc版本后,会发布LTS版本,后续会基于此版本进一步迭代。
rc2版本,升级组件化仓库管理。该版本主要对代码的管理模式做了调整和优化。
rc3版本,Solidity支持并行。该版本会支持Solidity并行冲突域分析,如果一份Solidity合约中,没有很多特别复杂的跨合约调用,我们的工具可以自动进行合约解析,合约也可以并行执行、并行跑、并行验证。
另外,rc3版本在协议层面上会进行升级。之前协议放在SDK中,在rc3版本,SDK会将编码、签名、验签等功能都内置到CPP-SDK里面,这样我们后续开发更多语言的SDK时,就无需在SDK中开发区块链相关的比较复杂的功能,可以快速地提供更多语言的 SDK。
rc4版本,支持大规模上链。该版本预计5月发布,届时还将发布Max版本,Max版本会支持分布式的计算和存储。同时,rc4版本在协议和故障恢复,会提供服务故障恢复功能;底层网络协议也会做升级;在网络性能优化、包括网络分发策略等会做一些升级。
LTS版本,支持高效开发运维管理。该版本预计6月发布,会支持一些运维开发的配套工具,比如k8s Framework等;同时会接入一些运维监控的平台;接入更多周边组件,比如支持跨链平台WeCross,中间件平台 WeBASE平台等。
在Q3、Q4, v3.0将在云原生落地、跨群组(链)通信、隐私计算结合等领域进行更多探索,也会推进从技术实现到项目管理实现全面国产化。比如更好地支持云原生落地;将陆羽跨链协议的相关能力集成到v3.0中,实现更便捷的跨链;隐私计算结合方面,计划将一些隐私计算的能力赋予到v3.0底层里,让v3.0可以更好地支持跟隐私计算场景相关的应用落地。
以上是v3.0的下一步计划,在实现过程中也欢迎大家共同参与共建。
v3.0采用更宽松的开源许可证Apache 2.0,鼓励社区更开放自由地协作起来,我们在v3.0中也通过设计更好的组件化模块,让v3.0的模块化结构更优雅的同时,也方便社区开发者更好地参与到v3.0的开源共建中。
目前社区已经有一些公司级别的团队参与到v3.0的研发中,未来,我们欢迎更多开发者的加入,一起开发特性、开发示例、参与文档编写或原创技术教程等,联系【小助手】即可参与共建。
FISCO BCOS v3.0代码仓库:
https://github.com/FISCO-BCOS/FISCO-BCOS/releases/tag/v3.0.0-rc2
FISCO BCOS v3.0技术文档:
[https://fisco-bcos-doc.readth...
](https://fisco-bcos-doc.readth...)
了解更多干货内容,请关注FISCO BCOS开源社区公众号,访问FISCO BCOS代码仓库可下载项目所有源代码:https://github.com/FISCO-BCOS/FISCO-BCOS,欢迎点击页面右上角star收藏,获取最新版本。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。