《Hyperledger Fabric菜鸟进阶攻略》 —2 深入浅出介绍Hyperledger Fabric架构设计
第2章
深入浅出介绍Hyperledger Fabric架构设计
2.1 透视逻辑架构与运行时架构
目标
1.理解Hyperledger Fabric的逻辑架构。
2.理解Hyperledger Fabric的实际运行时架构。
2.1.1 逻辑架构
Hyperledger Fabric从1.X开始,在扩展性及安全性方面有了很大的提升,且新增了诸多特性。
多通道:支持多通道,提高隔离安全性。
可插拔的组件:支持共识组件、权限管理组件等可插拔功能。
账本数据可被存储为多种格式。
分化了Peer节点的多种角色,可以根据具体情况实现灵活部署。
Hyperledger Fabric整体逻辑架构如下图所示。
Hyperledger Fabric的四大核心组件如下。
1)成员服务(Membership Service):成员服务管理保证了Hyperledger Fabric平台访问的安全性,提供了成员的注册、管理及审核功能。
2)区块链服务(Blockchain Service):区块链的核心部分,为区块链的主体功能提供了底层支撑;包括共识管理、分布式账本实现、账本的存储及网络中各节点之间的通信实现。
①区块链(Blockchain):区块之间以Hash连接为结构的交易日志。Peer节点从Order Service节点接收交易区块,并根据背书策略和并发冲突标记区块上的交易是否有效,然后将该区块追加到Peer文件系统中的Hash Chain上。
②交易(Transaction):交易分为对链码的部署和调用两种操作类型。
部署交易:部署是请求在Peer上启动链码容器;创建新的链码并设置一个程序作为参数。一个部署交易执行成功,表明链码已被成功安装到区块链上。
调用交易:调用是从账本中请求读写集,是在之前已部署链码的情况下执行一个操作。调用交易将使用链码提供的一个函数。当成功时,链码执行特定的函数对账本数据进行操作(修改状态),并返回操作结果。
3)链码服务(Chaincode Service):提供链码(Chaincode)的部署及运行时的所需环境。
4)事件(Event Stream):为各组件之间的异步通信提供技术实现。
链码是一个可以对账本数据进行操作的可开发的组件程序,部署运行在一个安全的容器中,用户可以通过调用链码中的指定函数对账本数据进行修改或读取。
- 点赞
- 收藏
- 关注作者
评论(0)