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的源码阅读记录