FISCO BCOS开源社区一贯秉承开源、开放、联合共建的原则,致力于链接社区力量将FISCO BCOS打造成更加完美的区块链底层平台。在社区通力协作下,FISCO BCOS v3.3.0已经发布,块内分片作为本次更新的核心亮点,实现了应用间交易执行的并行化。同时,该版本对全链路性能进行了深度优化,单链端到端性能突破10万TPS,为社区带来了性能更强大的FISCO BCOS。
科大讯飞深度参与该版本的开发共建,在取交易证明的过程添加了Merkle树缓存,显著提升了取交易证明的性能;同时为网关模块新增多CA接入能力,支持不同链可共用同一个网关模块收发消息,丰富了区块链搭建的场景。下面一起来看看FISCO BCOS v3.3.0的新功能吧。
关键特性:
块内分片块内分片技术是FISCO BCOS针对区块链上多应用场景推出的一种交易执行并行化方案,它将过往版本中的DMC(Deterministic Multi-Contract)和DAG并行方案融合在一起,构建了一套完整的并行机制。块内分片通过将链上合约进行分组,一个区块内的交易拆分为多个分片,实现不同分片间的交易在不同执行器中并行执行。基于DMC机制,跨分片调用在一个区块内完成,流程对用户透明,保证了执行结果一致的同时避免了繁重的SPV证明;分片内合约的相互调用在同一执行器进行,采用DAG的并行机制,保持原有单执行器场景下的高性能。用户可用控制台管理合约所属分片,分片内合约部署的合约自动继承所属分片配置,简化分片管理操作。
全新性能
该版本对FISCO BCOS节点和Java SDK的全链路性能进行了深度优化,对常用基准测试SmallBank的转账操作进行端到端测试,单链性能均突破10万TPS。
版本特性概览
- 块内分片:将合约分组,相同分片(分组)的交易调度到相同的执行器执行,片间采用DMC调度保证一致性,片内采用DAG调度保持高性能。
- 权限动态可配:支持系统在运行时动态开启或关闭权限功能,提高了权限管理的灵活性。
- Java SDK支持硬件加密机:FISCO BCOS v3.3.0 Java SDK现已支持通过加密机运行哈希计算、生成签名等密码学函数,提高了安全性。
- 网关入流量限速:通过配置文件(config.ini),用户可以更方便地控制入流量大小。
- Merkle树缓存:提升取交易证明的性能。
- 网关模块支持多CA:不同的链可共用同一个网关模块转发消息。
FISCO BCOS代码仓库:
https://github.com/FISCO-BCOS/FISCO-BCOS
FISCO BCOS代码仓库国内镜像:
https://gitee.com/FISCO-BCOS/FISCO-BCOS
FISCO BCOS v3.x技术文档:
https://fisco-bcos-doc.readthedocs.io/zh_CN/latest/
块内分片技术文档:
https://fisco-bcos-doc.readthedocs.io/zh_CN/latest/docs/design/parallel/index.html
性能测试指南:
向我们报告问题,欢迎提交issue: