Hyperledger Fabric Node SDK 服务器部署
Hyperledger Fabric Node SDK server deployment
我想澄清一些我对 Hyperledger Fabric 及其去中心化的困惑。
在生产中,我想要一个 React 网站,也许还有一个 React Native 应用程序来访问区块链,以及大约 3 或 4 个具有多个同行和渠道的组织。 ¿我把服务器放在哪里?
据我所知,SDK 服务器需要在客户端和一个对等点之间创建一个“网关”或连接,但我不明白该服务器在体系结构中的位置。我的意思是,“在一个 PaaS 平台上只部署了一台服务器?” ¿它驻留在客户端? ¿或者每个组织或每个同行中有一个部署?
如果我在单一平台上部署服务器,我不会集中网络?
正如我所说,这个问题是为了让我弄清楚一些关于 Hyperledger Fabric 的事情。
是的,你是对的。如果服务器部署在一个平台上,代表所有组织具有写访问权限,则网络将成为一个集中式网络,这违背了使用 Hyperledger Fabric 区块链的目的。
理想的去中心化架构应该是这样的。
- 每个peer占用一个实例,可以最大限度的保证高可用。如果有成本问题,每个组织至少占用两个实例来实现最低的高可用性。
- 每个组织只能访问其管理实例,从而创建更好的权限控制。
- 由于每个 Node.js SDK 服务器都需要访问组织 MSP 密钥来调用链代码,因此每个组织都应拥有自己的 Node.js SDK 服务器,该服务器只能代表其插入或更新链代码记录组织。
- 每个组织还应该有自己的 React 网站服务器,该服务器发送或接收 API 请求 to/from 其关联的 Node.js SDK 服务器。
我想澄清一些我对 Hyperledger Fabric 及其去中心化的困惑。
在生产中,我想要一个 React 网站,也许还有一个 React Native 应用程序来访问区块链,以及大约 3 或 4 个具有多个同行和渠道的组织。 ¿我把服务器放在哪里?
据我所知,SDK 服务器需要在客户端和一个对等点之间创建一个“网关”或连接,但我不明白该服务器在体系结构中的位置。我的意思是,“在一个 PaaS 平台上只部署了一台服务器?” ¿它驻留在客户端? ¿或者每个组织或每个同行中有一个部署?
如果我在单一平台上部署服务器,我不会集中网络?
正如我所说,这个问题是为了让我弄清楚一些关于 Hyperledger Fabric 的事情。
是的,你是对的。如果服务器部署在一个平台上,代表所有组织具有写访问权限,则网络将成为一个集中式网络,这违背了使用 Hyperledger Fabric 区块链的目的。
理想的去中心化架构应该是这样的。
- 每个peer占用一个实例,可以最大限度的保证高可用。如果有成本问题,每个组织至少占用两个实例来实现最低的高可用性。
- 每个组织只能访问其管理实例,从而创建更好的权限控制。
- 由于每个 Node.js SDK 服务器都需要访问组织 MSP 密钥来调用链代码,因此每个组织都应拥有自己的 Node.js SDK 服务器,该服务器只能代表其插入或更新链代码记录组织。
- 每个组织还应该有自己的 React 网站服务器,该服务器发送或接收 API 请求 to/from 其关联的 Node.js SDK 服务器。