将BNA文件部署到Hyperledger Composer时发生了什么?

时间:2017-06-22 20:05:11

标签: hyperledger-composer

在我整理了我的业务网络定义后,在部署该软件包后,对等端上实际发生了什么?我对超级边缘对等体如何解释javascript特别感兴趣,因为它似乎不是链码的受支持语言。

1 个答案:

答案 0 :(得分:3)

Composer链代码是用Go编写的。它使用Duktape Javascript解释器在Go进程中执行用户(和系统)JS代码。

Composer链代码将公共JS API映射到底层的Fabric Go API调用。

从Fabric的角度来看,这只是一个正常的"一段Go链码,虽然相当复杂!

当你"部署"使用Composer CLI的业务网络,您实际上做了两件事:

  • 部署Composer链代码(Go)并启动它
  • 部署业务网络存档的字节并将其存储在world-state中,以便在提交事务时解释器可以使用

将来我们希望通过本机Node.js执行来替换Duktape的使用。由于Fabric的模块化架构(以及Docker容器和gRPC的使用),这应该是可能的。