5.发布chaincode
chaincode 是开发人员按照特定接口编写的智能合约,通过 SDK 或者 CLI 在 Fabric 的网络上安装并且初始化后,该应用就能访问网络中的共享账本 。
chaincode 的生命周期如下:
a. Install(安装)
chaincode 要在 Fabric 网络上运行,必须要先安装在网络中的 peer 上,安装同时注明版本号保证应用的版本控制 。
b. Instantiate(实例化)
在 peer 上安装 chaincode 后,还需要实例化才能真正激活该 chaincode。在实例化的过程中,chaincode 就会被编译并打包成容器镜像,然后启动运行 。若 chaincode 在实例化的过程中更新了数据状态,如给某个变量赋予初始值,则该状态变化会被记录在共享账本中 。每个应用只能被实例化一次,实例化可在任意一个已安装该 chaincode 的 peer 上进行 。
c. Invoke和query (调用和查询)
chaincode 在实例化后,用户就能与它进行交互,其中 query 查询与应用相关的状态(即只读),而 invoke 则可能会改变其状态 。
d. Upgrade(升级)
在 chaincode 添加新功能或出现 bug 需要升级时,可以通过 upgrade 交易来实现 。这时需要把新的代码通过install交易安装到正在运行该 chaincode
的 peer 上,安装时需注明比先前版本更高的版本号,接下来只需要向任意一个安装了新代码的 peer 发送 upgrade 交易就能更新 chaincode,chaincode 在更新前的状态也会得到保留 。
【超级账本Fabric 1.0是什么? 多节点集群的部署步骤是什么?】
推荐阅读
- 自制388超级电池,狂斩 飞利浦9@9于马下
- 超级省电计划
- hyperledger 国内外区块链联盟汇总有什么?超级账本是什么?
- V50 CXV65通讯录的一个超级BUG
- 亚特兰蒂斯传说存在吗?超级文明大西国,高度发达的古老大陆!
- 百度网盘购买了超级会员下载速度仍很慢
- vivo x7超级截屏怎么用?vivox7截屏方法是什么?
- 敬告所有S60朋友,不要对MMC卡设置密码,超级大BUG
- 超级usb充电数据线制作法
- CXV65 25版本的超级自动关机BUG