Hands-On Fabric模块
天然灵凡
发表于 2023-1-11 10:45:06
163
0
0
前面我们知道Fabric是由多个模块组成的程序组:
peerorderercryptogenconfigtxgenconfigtxlator
其中orderer和peer是Fabric的核心模块。下面来说明它们的作用。
/ v$ B. @ c. M9 M
3 L# W5 ?; I; Z* G$ G3 G5 x
peer模块
一个完整的组织必须具备4类peer服务器节点,即使组织内只有一个peer程序进程,也依然具备这样的4个角色:3 Y; ?* r, ^: f% T: Z; f+ H
提交节点(committer peer)' u/ X- l }/ L' @* ^6 q3 G4 ~( k
committer节点负责维护区块链的账本结构,该节点会定期从Orderer节点获取包含交易的区块,在对这些区块链进行合法发行校验后,会把这些区块加入到区块链中。committer节点无法通过配置文件配置,当前客户端或者命令行发起交易请求的时候需要指定相关的committer节点。6 t" N# U% y/ E- o* O3 y. i$ P
背书节点(endorse peer)% ^. ]6 n0 G( O: n
endorse节点主要负责对交易进行校验,当背书节点接受到客户端发送的交易请求之后,会对交易的合法性进行校验,校验成功之后会讲结果反馈给客户端。endorse节点也是无法通过配置文件配置,需要发起交易的客户端指定。
主节点(leader peer)- ^: e6 H6 y u) Q* ]! g4 T5 q, E- [
leader节点负责代表组织从Orderer节点中获取区块信息。可以通过core.yaml文件指定:自主选举和强制制定。
& B( K5 m% G" E1 ~* w- [
锚节点(anchor peer)0 b2 d% x$ r2 M) m. G6 m) S
anchor节点主要负责代表组织和其他组织进行信息交换,锚节点非常重要,如果出现问题会和其他组织失去联系。可以通过configtx.yaml文件配置。
其中,主节点和锚节点在每个组织内部只能存在一个。 ]) m" Y) u- t4 A. k, `
orderer模块$ T) i' H1 Y0 i4 o) Z" R- s* O& I
orderer节点负责对不同客户端发送的交易进行排序和打包,,包含Solo模式或者Kafka模式。
Fabric数据安全传输的方式
为了保证数据传输的安全性,Fabric提供了TLS(Transport Layer Security)。; k8 e$ D( @2 x( h" u: k
TLS并不是Fabric中的必选项,可以通过相关的配置激活或者关闭。在peer模块和orderer模块都具有TLS的相关配置。
成为第一个吐槽的人