On March 24th, the FISCO BCOS open source community held the online Meetup of "FISCO BCOS v3.0 2022 Technology Roadmap Heavy Launch". In this event, Li Huizhong, head of R&D of the blockchain underlying platform of WeBank and senior architect of FISCO BCOS, released the technology development roadmap of FISCO BCOS v3.0 in 2022 and elaborated in detail.
We have organized the wonderful content of the live broadcast for everyone to exchange and learn. Those who have missed it before can also watch the live broadcast through the video below. Welcome to add [Little Assistant WeChat: FISCOBCOS010] to participate in the development of v3.0 at all stages.
The following content is organized according to the sharing of the guests:
Hello everyone, thanks for watching the live broadcast, I saw a lot of familiar faces in the live broadcast room. Tonight, I will share with you the R&D process of FISCO BCOS along the way, what the FISCO BCOS development team is doing, the R&D technology route of v3.0 in 2022, and how community developers can participate in the co-construction of v3.0 R&D.
From v1.0 to v3.0, the technological evolution of FISCO BCOS
In 2017, we released the first financial-grade open source consortium chain underlying platform FISCO BCOS, and continued to upgrade and iterate in terms of tools, documentation, and platform compatibility.
In 2019, we upgraded the technical architecture of the entire platform and launched v2.0 to better support the increasingly diverse needs of blockchain businesses. This version has made breakthroughs in scalability, performance, ease of use, privacy isolation, etc., such as: supporting multi-group architecture to overcome the bottleneck of system throughput; supporting distributed storage, allowing nodes to store data Stored in a remote distributed system, it overcomes many limitations of localized data storage.
The performance of v2.0 has also been greatly improved. In the trusted blockchain evaluation of the China Academy of Information and Communications Technology in 2019, the single-chain TPS exceeded 20,000.
In the context of new data infrastructure, it has become an industry-wide consensus to promote digital industrialization and industrial digitalization. Technology needs to carry larger-scale applications, more business scenarios and wider industry participation. Behind these demands, higher requirements are placed on the underlying technology of the blockchain. At the 2021 Golden Chain Alliance Ecological Conference, we officially released the new FISCO BCOS v3.0.
FISCO BCOS v3.0 core features
v3.0 has been comprehensively upgraded from various aspects such as architecture, algorithms, products, as well as security and controllability and privacy computing collaboration. These upgrades will help greatly improve the performance of the platform.
- Support the landing of large-scale commercial scenarios
v3.0 adopts a brand-new microservice architecture design to achieve modularized hierarchical governance and parallel expansion. The overall architecture is divided into 5 levels. The access layer is responsible for the network, the scheduling layer is the blockchain core, the computing layer is responsible for transaction verification, the storage layer is responsible for data storage, and the management layer provides management services such as publishing, configuration, and control for the entire system.
Through the microservice architecture, v3.0 realizes hierarchical governance of network, scheduling, computing, storage, and management, and each layer can be independently expanded.
- Coping with massive transactions on the chain
v3.0 has upgraded the consensus and scheduling to realize the pipeline consensus mechanism and hybrid scheduling, which greatly improves the overall throughput of the system and reduces the delay at the same time. The pipeline mechanism divides the most critical transaction processing process of the blockchain system into three stages: packaging, calculation, and submission. Each stage is executed in parallel, and the stages are connected by pipeline, making full use of the CPU and improving the utilization of IO resources.
In the calculation stage, we propose the industry's first deterministic multi-contract parallel algorithm DMC (Deterministic Multi-Contract), which can extend transaction verification to multi-machine parallelism, and DAG parallelism can also be used in each machine. This hybrid scheduling mechanism can Implement clustered transaction verification.
- Support national secret access on all platforms
In terms of security, FISCO BCOS has always attached importance to national secret access and localization support. In order to better realize national secret access in multi-language, multi-terminal, and full links, v3.0 has built a general national secret basic component, and integrated the national secret algorithm. , the national secret communication protocol, and the domestic encryption machine access protocol are encapsulated into general basic components.
On this basis, v3.0 implements blockchain-related network, group, ledger, event and other logic into an independent shared library in C++ language, and encapsulates it to provide C language interface. Based on this set of low-level C interfaces, SDKs in different languages, platforms and systems can be quickly connected and developed, and these multi-language SDKs do not need to care about the underlying logic.
- Meet diverse business needs
v3.0 adopts a flexible and extensible development framework, and is professionally customized according to user needs in different scenarios, and has launched 3 different types of versions.
Air Light Edition : Following the all-in-one design of FISCO BCOS v2.0, all the underlying capabilities of the blockchain are packaged into one service, which can be used by learning users to quickly get started in scenarios such as entry, development, testing, and POC verification. .
Pro Professional Edition : suitable for regular production business. The network functions are split into RPC and Gateway during design. The former is responsible for the interaction with the SDK, and the latter is responsible for the interaction between inter-organizational nodes; by stripping the access layer separately, the blockchain The core capabilities are expanded through multiple groups, which is especially suitable for the BaaS platform to build the underlying basic capabilities of the blockchain based on groups.
Max large-capacity version : The positioning is to meet the needs of a large amount of data on the chain business, suitable for large-capacity scenarios, based on the Pro version, the node service is divided into multiple components, and the parallel scalable part is independent.
Blockbuster debut: 2022 technology roadmap
At present, v3.0 is in the rc stage, and two rc versions have been released. It is expected that the LTS version will be released after the fourth rc version is released, and further iterations will be based on this version in the future.
rc2 version, upgrade componentized warehouse management . This version mainly adjusts and optimizes the management mode of the code.
rc3 version, Solidity supports parallelism . This version will support Solidity parallel conflict domain analysis. If there are not many complex cross-contract calls in a Solidity contract, our tool can automatically analyze the contract, and the contract can also be executed, run in parallel, and verified in parallel.
In addition, the rc3 version will be upgraded at the protocol level . The previous protocol was placed in the SDK. In the rc3 version, the SDK will build encoding, signature, signature verification and other functions into the CPP-SDK, so that when we develop SDKs in more languages, there is no need to develop blockchains in the SDK. For more complex functions, SDKs in more languages can be provided quickly.
The rc4 version supports large-scale chaining . The version is expected to be released in May, and the Max version will also be released at that time. The Max version will support distributed computing and storage. At the same time, the rc4 version will provide service failure recovery functions in protocol and fault recovery; the underlying network protocol will also be upgraded; network performance optimization, including network distribution strategies, will be upgraded.
The LTS version supports efficient development, operation and maintenance management . This version is expected to be released in June, and will support some supporting tools for operation and maintenance development, such as k8s Framework, etc.; at the same time, it will connect to some platforms for operation and maintenance monitoring; access to more peripheral components, such as support for cross-chain platform WeCross, middleware platform WeBASE platform, etc.
In Q3 and Q4, v3.0 will carry out more explorations in the fields of cloud native landing, cross-group (chain) communication, and privacy computing integration, and will also promote comprehensive localization from technology implementation to project management. For example, to better support cloud native landing; integrate the relevant capabilities of Lu Yu’s cross-chain protocol into v3.0 to achieve more convenient cross-chain; in terms of privacy computing integration, it plans to give some privacy computing capabilities to the bottom layer of v3.0 , so that v3.0 can better support the implementation of applications related to privacy computing scenarios.
The above is the next step for v3.0, and everyone is welcome to participate in the co-construction during the implementation process.
v3.0 adopts the more relaxed open source license Apache 2.0, which encourages the community to collaborate more openly and freely. We also design better componentized modules in v3.0 to make the modular structure of v3.0 more elegant at the same time. , and it is also convenient for community developers to better participate in the open source co-construction of v3.0.
At present, some company-level teams in the community have participated in the research and development of v3.0. In the future, we welcome more developers to join in to develop features, develop examples, participate in document writing or original technical tutorials, etc., contact [Little Assistant] to participate in the co-construction.
FISCO BCOS v3.0 code repository:
https://github.com/FISCO-BCOS/FISCO-BCOS/releases/tag/v3.0.0-rc2
FISCO BCOS v3.0 technical documentation:
[ https://fisco-bcos-doc.readthedocs.io/zh_CN/latest/
]( https://fisco-bcos-doc.readthedocs.io/zh_CN/latest/ )
For more dry goods, please pay attention to the FISCO BCOS open source community public account, visit the FISCO BCOS code repository to download all the source code of the project: https://github.com/FISCO-BCOS/FISCO-BCOS , please click the star collection in the upper right corner of the page , to get the latest version .
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。