2017-8-10
Peer节点:所有的节点都是记账节点(Committer),背书节点(Endorse)是动态的角色,,与具体链码绑定,每个链码在实例化的时候都会设置背书策略,指定那些节点对交易背书后才是有效的。
排序服务节点:Kafka,实现多通道
CA节点:接收客户端的注册申请,返回注册密码用于用户登录.(可选)
负责成员管理,
ChainCode :
Transaction:一次函数的运行,存储执行信息,不包含操作的数据
World state:fabric系统中所有变量的值的集合,
TransacGon实际操作的是数据,eg. 交易易商品的信息。每个chaincode都有⾃自⼰己的数据。•Fabric使⽤用Rocksdb存储数据,⼀一个key-value数据库。Key -> 变量量,value -> 值。•Fabric将每⼀一对key-value叫做⼀一个state,⽽而所有的chaincode的state的合集就是World State。
Channel — 通道,⼦子链。同⼀一peer可加⼊入不不同channel。Chaincode的操作基于channel进⾏行行。同⼀一channel上的peer结点同步其上chaincode执⾏行行的结果。
Endorser— (模拟)执⾏行行Chaincode。分离计算任务,减轻consensus节点负担,增加吞吐量量。⽀支持endorsement policy,更更加灵活。
Orderer — 对chaincode执⾏行行结果consensus。⽀支持solo/ka|a/sBFT不不同的ordering策略略。Commiter — 将chaincode执⾏行行结果写进ledger。
共识账本:
每个peer节点都会维护四个DB
·idStore, 存储 chainID;
·stateDB, 存储 world state,当前交易状态;
·versioned DB, 存储 key 的 版本 变化;
·blockdb, 存储 block,只会追加
也就是存储了三类数据:
Block ledge 区块文件
State ledge 状态数据
History ledge 历史交易数据
endorse节点目的为了提高吞吐量,不用全节点运算,会对链码模拟执行,生成TxRwSet结果。
交易高度:一个区块编号和交易编号组成的二元组
区块类型:背书交易区块,配置交易区块(目前无)