区块链交易流程

区块链交易流程_第1张图片

  1. App/CLI 端向指定的 endorser 节点发送 Instantiate/invoke请求;
  2. endorser 接收到请求之后,如果相关 chaincode 存在,就会将请求发送到 chaincode 端,并执行相关函数(由于执行过程中,可能涉及到多次的 state 读写,而每一次读写都会涉及到底层 db 的操作,所以这个过程会涉及到多次与 endorser 节点的通信);
  3. chaincode 执行完毕之后,会发送消息给 endorser 节点,如果执行成功, endorser 节点就会封装执行结果并对齐 endorse,并把结果返回给 App/CLI 端;
  4. App/CLI 端收到 endorser 节点的执行结果后,会将交易(包含上一步返回的读写集)发送给 order 节点
  5. order 节点会将若干交易进行排序和打包成 block,发送到 commiter 节点
  6. commiter 节点校验各个节点的交易
  7. 验证通过,同步区块,写入状态数据库,交易完成。
交易的本质,其实就是一次 chaincode 调用。

你可能感兴趣的:(区块链)