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

What programming languages and databases are suported by Hyperledger Fabric?

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

我有几个考虑因素:

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

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

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

感谢您的回答。

Is Java still in beta too, and is there support for any other programming language?

Hyperledger V1.0 不支持 Java 链码。 将来会有对它的支持。 您可以在 https://chat.hyperledger.org/channel/fabric 询问预计到达时间。

还有一项正在进行的工作需要 node.js 支持。

Also, what operating system do you suggest for production server running Hyperledger?

Ubuntu 16.04 LTS 运行良好

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

它有自己的Modeling Language

Does anyone have any experience using CouchDB in Hyperledger?

是的,如果您的数据建模为 JSON 并且您想查询数据的内容,那么 CouchDB 可以很好地工作。默认的 goleveldb 状态数据库只支持基于键的查询。

Hyperledger 最初是使用 Go 语言构建的。

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

事务日志、状态数据并由 Level DBCouch DB

支持

注:

LevelDB and CouchDB are fully integrated in fabric framework, currently you can't replace them with other database

链码在安全的 Docker 容器中运行,链码(也称为智能合约)可以在 GoNode[=30 中进行编程=],Java 目前 Go 是稳定且完全支持的语言。

考虑到操作系统,我已经在 Microsoft Azure 平台上测试了结构网络 运行,在该平台上创建了 ubuntu 16.04 的图像并安装了结构 framework.till 现在没有问题。