fabric学习过程详细记录三


以下阅读笔记来自阅读《深度探索区块链  HYPERLEDGER技术与应用》

以下所有信息,适用于fabric1.0版本

安装相关内容如下

安装链码只针对节点,与链无关。参考背书策略来选择需要安装的节点。

链码实例化

Fabric链码实例化是由组织内的哪个节点完成的https://zhuanlan.zhihu.com/p/97996250

链码实例化详解。。做了些啥

https://blog.csdn.net/love_feng_forever/article/details/100532324

链码升级

链码升级是和链码实例化类似的操作。链码升级前也需要安装。链码升级只影响到指定需要更新的通道,所以链码升级不会主动删除旧版本的链码。

流程图和时序图见P164和P165

背书节点会先后调用LSCC获取ChaincodeData 和ChaincodeDeploymentSpec

交易模拟器(链码逻辑处理过程中不直接影响状态数据库,而是把过程数据记录到模拟器)

TxSimulator

(需要了解golang 的上下文(context)机制,交易模拟器被添加到txsimulator

key)

关于数据分发。

背书节点是如何区别同一时间内的链码调用请求的?

每个链码会建立一个gRPC长连接。相同的链码调用则复用同一个长连接。

用交易号对每次链码调用做标识,通过交易号去找到对应上下文数据。根据txsimulator

key去找到交易模拟器

系统链码运行在peer节点的进程空间,而非容器。和节点交互使用golang通道。系统链码调用分为节点进程内部调用和外部应用程序调用两种情况。

 

Fabric 1.4 官方中文链接https://hyperledger-fabric-cn.readthedocs.io/zh/latest

Fabric 2.0新特性https://blog.csdn.net/hjshpu/article/details/104382345

本系列完结,接下来会在博客更新fabric的源码阅读记录