Hyperledger Fabric 2.0 Alpha新特性
Hyperledger Fabric v2.0 Alpha引入两大新功能,新的Fabric链码生命周期和FabToken.
新的链码生命周期
2.0支持链码的去中心化的治理,引入新的流程在节点上安装链码,在通道上启动实例。新的链码生命周期允许多个组织对链码的参数协同达成一致,例如链码的背书策略。新的模型的改进点如下:
(1) 多个组织必须确认同意链码的参数
1.x版本里,一个组织拥有修改链码参数的能力,例如修改背书策略,通道的其它成员也被同步而更改。新的链码生命周期更灵活一些,它兼容支持老版本的中心化信任模型,同时也支持去中心化的模型,只要有足够多的组织同意背书策略即可。
(2) 更安全的链码升级流程
老版本的升级由单独一个组织发起,存在一些风险,例如通道的成员升级时可能未安装好最新的链码。新的模型需要足够多的组织成员同意后才能升级。
(3) 更简单的更新背书策略
新的链码生命周期无需重新打包安装链码,可直接修改背书策略,用户也可以使用新的默认的策略,从通道的主要成员获得背书。这个默认策略在组织加入或退出通道时会自动更新。
(4) 可审查的链码包
Fabric生命周期打包链码为tar文件,这样更易于检查代码,也方便协调多组织的安装。
(5) 使用一个包在一个通道上启动多个链码
老版本的链码在通道安装会使用名字和版本做标记,新版本我们可以打为一个链码包,使用不同的名字即可,在一个或多个通道部署多次。
使用新的链码生命周期
官方提供了新的操作手册和例子: Chaincode for operator https://hyperledger-fabric.readthedocs.io/en/latest/chaincode4noah.html
Building your first network https://hyperledger-fabric.readthedocs.io/en/latest/build_network.html
Using private data in fabric https://hyperledger-fabric.readthedocs.io/en/latest/private_data_tutorial.html
Endorsement policies https://hyperledger-fabric.readthedocs.io/en/latest/endorsement-policies.html
限制和局限 (1) couchdb的索引暂不支持 (2) 链码使用新周期暂不支持服务发现 这些限制后面会得到解决
FabToken
2.0提供了让用户在通道使用令牌环呈现资源的能力。FabToken是一个令牌环管理系统,它使用Unspent Transaction Output(UTXO)模型结合Fabric自身msp架构等发起,转换和赎回采访令牌环。
Using FabToken https://hyperledger-fabric.readthedocs.io/en/latest/token/FabToken.html 官方提供了对应操作文档 Alpine镜像
2.0以后联系使用alpine这个linux发行版本,docker镜像会更小,启动会更快,占用主机硬盘空间更小,同时更安全。 Raft实现的排序服务
1.4.1引入的etcd实现的raft(CFT)容错排序服务,以前编写的一致性文章有提到过,跟zookeeper的协议有点类似。比以前的kafka排序服务更容易搭建。排序服务是可插拔的,华为等大厂都有自己实现的XFT排序服务。 小结
总体上还是继续稳定优化,让开发更好编写和部署链码,让运维更方便管理系统。
- 原文作者:Zealot
- 原文链接:https://www.51discuss.com/posts/fabric-2.0-alpha/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。