FISCO BCOS整体架构---群组架构

一、概述

整体架构上,FISCO BCOS划分成基础层、核心层、管理层和接口层:

1.基础层:

提供区块链的基础数据结构和算法库


2.核心层:

实现了区块链的核心逻辑,核心层分为两大部分:

(1) 链核心层: 实现区块链的链式数据结构、交易执行引擎和存储驱动
(2) 互联核心层: 实现区块链的基础P2P网络通信、共识机制和区块同步机制


3.管理层:

实现区块链的管理功能,包括参数配置、账本管理和AMOP


4.接口层:

面向区块链用户,提供多种协议的RPC接口、SDK和交互式控制台


5.整体架构图:

FISCO BCOS整体架构---群组架构_第1张图片


二、群组架构(bcos 2.0 版本新增了群组架构)

1.群组的特点

(1)群组架构允许网络存在多个账本,每个账本是一个独立的小组。

解决的问题:系统吞吐能力能够横向扩展

(2)各群组独立执行共识流程

解决的问题:解决了多群组同一个共识模块导致的性能瓶颈问题。按群组的粒度划分,由群组内参与者决定如何进行共识,一个群组内的共识不受其他群组影响,群组内维护自己的交易事务和数据,使得各群组之间解除耦合,独立运作,也便于进行横向扩展。

(3)一个组相当于一条链,

解决的问题:实现了传统多链的扩展目的,同时一个节点可以参与到多条链,能够极大地简化运维复杂度,降低管理成本


2.举例子:

机构A、B、C所有节点构成一个区块链网络,运行业务1;一段时间后,机构A、B启动业务2,且不希望该业务相关数据、交易处理被机构C感知,有何解?

FISCO BCOS 1.3 :机构A和机构B重新搭一条链运行业务2;运维管理员需要运维两条链,维护两套端口
FISCO BCOS 2.0 :机构A和机构B新建一个群组运行业务2;运维管理员仅需维护一条链

显然在达到相同隐私保护需求基础上,FISCO BCOS 2.0具有更好的扩展性、可运维性和灵活性。


3.多群组架构的网络消息隔离和数据隔离

(1)网络消息隔离:

通过网络准入和账本白名单实现各账本间网络消息隔离。

(2)数据隔离:

每个群组独立运行各自的不同或者相同的共识算法。

每个账本模块自底向上主要包括核心层,接口层和调度层三层,三层相互协作,共同保证FISCO BCOS单个群组独立健壮地运行。


4.账本模块三层

(1)核心层

负责将群组的区块数据、区块信息、系统表以及区块执行结果写入底层数据库。

(2)接口层

包括交易池(TxPool)、区块链(BlockChain)和区块执行器(BlockVerifier)三个模块。

(3)调度层

包括共识模块(Consensus)和同步模块(Sync)。


三、参考资料

FISCO BCOS 官方文档: https://fisco-bcos-documentation.readthedocs.io/zh_CN/release-2.0/docs/design/architecture/index.html

你可能感兴趣的:(区块链)