Hyperledger Fabric支持哪些编程语言和数据库?

时间:2017-07-27 06:43:40

标签: hyperledger hyperledger-fabric

我以前有使用以太坊和Solidity的经验,但现在我想尝试为Hyperledger编写智能合约。

我几乎没有考虑因素:

首先是关于支持的数据库。根据他们的文档(http://hyperledger-fabric.readthedocs.io/en/latest/ledger.html),他们使用LevelDB存储合同数据,而CouchDB支持仍处于测试阶段。有没有人在Hyperledger中使用CouchDB的经验?

其次,我看到Go主要用于智能合约的规范,但它们也支持Java。 Java是否仍处于测试阶段,是否支持其他任何编程语言?

另外,对于运行Hyperledger的生产服务器,您建议使用哪种操作系统?

感谢您的回答。

4 个答案:

答案 0 :(得分:3)

  

Java是否仍处于测试阶段,并且是否支持其他任何内容   编程语言?

Hyperledger V1.0不支持Java Chaincode。 将来会有支持。 你可以在https://chat.hyperledger.org/channel/fabric询问ETA。

还有一项工作正在进行中,以支持node.js。

  

此外,您对生产服务器建议使用什么操作系统   运行Hyperledger?

Ubuntu 16.04 LTS运行良好

答案 1 :(得分:3)

  

有没有人在Hyperledger中使用CouchDB有经验?

是的,如果您的数据被建模为JSON并且您想查询数据的内容,那么CouchDB可以正常工作。默认的goleveldb状态数据库仅支持基于密钥的查询。

答案 2 :(得分:1)

您应该看看Hyperleger Composer,它可以帮助您轻松地在Hyperledger Fabric上创建区块链应用程序。 (它与Ubuntu的效果更好。)

它有自己的Modeling Language

答案 3 :(得分:0)

超级账本最初是使用 Go 语言构建的。

超级账本团队的目标是支持尽可能多的语言。目前,hyperledger composer(用于开发区块链应用程序的工具)支持用于定义资产,交易和链码的javascript。

交易日志,状态数据并由 Level DB Couch DB

支持

注意:

  

LevelDB和CouchDB完全集成在结构框架中,   当前您无法用其他数据库替换它们

Chaincode在受保护的Docker容器中运行,链代码(又名智能合约)当前可以在 Go Node Java 中编程Go是稳定且完全受支持的语言。

考虑到操作系统,我已经测试了在Microsoft Azure平台上运行的结构网络,在该网络上创建了ubuntu 16.04的映像并安装了Fabric框架。到目前为止,它没有任何问题。