fabric-sdk-java和shim for java之间的关系是什么?
shim for java位于结构源代码中。为什么golang编写的结构有java代码? fabric-sdk-java是一个独立的项目。看来他们可以访问grpc服务器(比如peer和orderer),那么它们之间的关系是什么?
答案 0 :(得分:1)
SDK独立于链码。您可以将Node.js SDK与golang chaincode一起使用,使用Java chaincode或Node.js链代码。不需要保持一致。
(java)shim在golang代码库中的原因只是为了把它放在哪里,如前所述,我们可以共享定义gRPC接口的.proto文件。随着Java和Node.js链码垫片的独立回购的出现,很快就会实施重构。
答案 1 :(得分:0)
实现blockchain technology的Hyperledger Fabric为不同的编程语言提供了大量的SDK,可用于Node.js和Java SDK。 由golang编写的结构在java中,因为Fabric在Java中可用,NodeJs和Java被更多开发人员接受,但无关紧要只是它们之间的任何内容。 是的,他们使用gRPC与区块链进行通信。之前它支持REST API,但似乎他们在新发布的V1.0版本中停止了对它的支持。
如果我们有点扭曲,并为每种语言的垫片都有独立的存储库,它会使事情变得更清洁,它会 显着减少了链码部署的规模。
我们遇到的一个问题是如何使它们保持一致。我们可以简单地复制。来自结构的.proto并将其检入shim repos。尴尬但是 有效的。
所以,我们拥有的是:
织物 面料-GO-垫片 织物-java的垫片 ...
我们会在面料中保留.proto并复制到面料 - 垫片
根据需要进行回购,但不会进行编辑。我们需要记录这一点
仔细。
每个仓库都可以管理自己的依赖管理发布(例如
javascript到npm,java到maven等)。