Hands-On Fabric模块
天然灵凡
发表于 2023-1-11 10:45:06
57
0
0
前面我们知道Fabric是由多个模块组成的程序组:/ N; D( T: H X7 |* T; X
peerorderercryptogenconfigtxgenconfigtxlator
其中orderer和peer是Fabric的核心模块。下面来说明它们的作用。
5 ^. a; ~7 f" K ~* Y, `
peer模块
一个完整的组织必须具备4类peer服务器节点,即使组织内只有一个peer程序进程,也依然具备这样的4个角色:
提交节点(committer peer)$ e. j) y( c# c, C- Q
committer节点负责维护区块链的账本结构,该节点会定期从Orderer节点获取包含交易的区块,在对这些区块链进行合法发行校验后,会把这些区块加入到区块链中。committer节点无法通过配置文件配置,当前客户端或者命令行发起交易请求的时候需要指定相关的committer节点。
1 G1 f! B4 _% k! P& c' D
背书节点(endorse peer)2 l+ @' ]- _2 i- R+ s3 ]
endorse节点主要负责对交易进行校验,当背书节点接受到客户端发送的交易请求之后,会对交易的合法性进行校验,校验成功之后会讲结果反馈给客户端。endorse节点也是无法通过配置文件配置,需要发起交易的客户端指定。
8 f/ @/ ? L6 d
主节点(leader peer): z0 P1 x5 `/ |, t7 N
leader节点负责代表组织从Orderer节点中获取区块信息。可以通过core.yaml文件指定:自主选举和强制制定。5 [# N" @7 k3 L4 {6 W! L. t
锚节点(anchor peer)
anchor节点主要负责代表组织和其他组织进行信息交换,锚节点非常重要,如果出现问题会和其他组织失去联系。可以通过configtx.yaml文件配置。
其中,主节点和锚节点在每个组织内部只能存在一个。
orderer模块
orderer节点负责对不同客户端发送的交易进行排序和打包,,包含Solo模式或者Kafka模式。8 p, x' g& v% p
Fabric数据安全传输的方式' W: \1 Y5 {9 w/ X K; ~. s
为了保证数据传输的安全性,Fabric提供了TLS(Transport Layer Security)。/ e# y4 X# O/ {) M! C% U, x: X( M
TLS并不是Fabric中的必选项,可以通过相关的配置激活或者关闭。在peer模块和orderer模块都具有TLS的相关配置。
成为第一个吐槽的人