【发布时间】:2018-10-08 18:53:50
【问题描述】:
我看到要创建通道,需要使用 configtxgen 脚本来创建通道工件、创世块和通道配置二进制定义。如果我需要能够根据需要以编程方式和动态创建新频道怎么办?是否有任何可以在程序中调用的 api,比如 nodejs,它会做 'configtxgen' 的作用?
【问题讨论】:
标签: hyperledger-fabric ibm-blockchain
我看到要创建通道,需要使用 configtxgen 脚本来创建通道工件、创世块和通道配置二进制定义。如果我需要能够根据需要以编程方式和动态创建新频道怎么办?是否有任何可以在程序中调用的 api,比如 nodejs,它会做 'configtxgen' 的作用?
【问题讨论】:
标签: hyperledger-fabric ibm-blockchain
configtxgen 是一种工具,旨在使用大部分预配置的网络(例如sample applications)促进开发和测试。它不需要或不打算在生产环境中使用。您可以使用Fabric SDKs 之一来创建频道、加入频道等。
【讨论】:
configtxgen 不适用于生产,但是没有其他方法可以创建通道配置二进制文件。所以.. 创建频道还没有准备好生产? :)
使用configtxgen 生成的通道配置事务 是一个包含common.Envelope 消息的protobuf 的文件。
假设您使用 Java(尽管这在其他语言中也应该是可能的),您可以将 protobuf 编译为本机类。借助 Fabric Java SDK,Envelope 消息已编译为 Java,因此您可以搭载 SDK 来创建对象。获得对象后,您可以获取 ByteArray 以创建将用于创建通道的 ChannelConfiguration 对象。此方法根本不需要 configtx.yaml 文件,因此您需要在应用中跟踪组织及其 MSP ID。
【讨论】: