Peer节点类型
    --Endorser背书节点
            用于背书签名
            只有一部分节点是背书节点
    --commit节点
            用于保存区块
            所有节点都是commit节点
    --Leader节点
            获取orderer服务节点生成的区块,广播给本组织中的其他节点
    --Anchor锚节点
            跨组织的数据交换
交易过程:
1、应用首先将交易提案发送给背书节点
2、如果是一个合法的交易提案,背书节点会模拟执行交易
- 不会对账本中的数据进行更改,也就是说不生成区块
 
3、模拟执行会产生一个提案响应返回给应用程序
4、应用程序接收到提案响应后,收集到足够的背书
- 将交易提案及提案响应
 - 打包生成真正的交易请求
 - 将该交易请求发送给orderer服务节点
 
5、orderer服务节点根据接收到的请求根据时间进行排序,生成区块
6、orderer服务节点将生成的区块通过Gossip协议广播给leader节点
7、Leader节点执行VSCC
- 验证交易是否合法,提交的请求格式是否正确,版本号是否一致
 - 节点是否在指定的通道中
 - <font color=red>验证区块只在leader节点中验证</font>
 
8、保存区块至链中
9、通过Gossip协议广播给组织内的其他节点
10、通过anchor节点通知其他组织

一些补充:
fabric账本:leverdb、couchdb
fabric中的数据库
- 
    
stateDB:状态数据库 –保存最新的状态数据
 - 
    
Block Index:区块索引数据库 –区块编号,交易ID
 - 
    
History Index:历史数据库
 
orderer节点通过Gossip广播时,使用gRPC框架中的protobuf将区块序列化
            
            
      
      
                
                
