Unitimes AMA 邀请了 Ethereum Classic (以太经典 ETC)开发者关系总监 Yaz Khoury 对「Ethercluster 如何真正实现 DApp 去中心化」进行了线上问答。Khoury 表示 Ethercluster 最大的的优势在于真正的去中心化,提供了一个开源的替代方案,允许他人查看设计并对其进行改进。

原文标题:《对话以太经典:Ethercluster 如何真正实现 DApp 去中心化 | Unitimes AMA》

专访 ETC 开源项目 Ethercluster:如何实现 DApp 去中心化开发Yaz Khoury,ETC 开发者关系总监

固定问答

Unitimes:你好 Yaz。欢迎参加 Unitimes AMA。请先给我们介绍一下你的背景以及你在 ETC Copperative 的角色吧!

Yaz:我的专业是机器人和电子工程,建造 TechCrunch 上的专题项目,获得过 NASA 最高奖项。在过去的 4 年里,我一直从事软件开发工作,探索我喜欢的各种领域,例如网络开发,脚本编写和机器学习。我还对 DevOps 和网络安全感兴趣。

我在 ETC Cooperative 担任开发者关系总监。我基本上主要负责 ETC 的开源项目,让开发人员更容易在 ETC 的基础上着手开发。

Unitimes:什么是 Ethercluster?你们发起这个项目的动机是什么?

Yaz:Ethercluster 是一种开源的开发运维设计规范,用于构建可扩展的区块链基础设施。它是 Infura 的替代方案,能够做到真正的去中心化,同时能够让 DApp 开发人员依赖自己的区块链基础设施而不是集中式端点。

至于我们发起这个项目的动机,由于我们在 Infura 上找不到 ETC 的即时支持,在与他们讨论了近一年的时间后,我们意识到,要从 Infura 获得我们需要的支持需要的时间太长了。因此,我们决定构建一个开源的替代方案 Ethercluster,这样其他人也可以一起来帮助改进。

Unitimes:开始上手需要哪些工具?

Yaz:需要三个主要工具来构建:1)Docker 2)Kubernetes 3)Terraform。

根据 Ethercluster 文档的指导,需要只需要担心 Terraform,其余的工具都会随它一起部署。此外,使用 Parity 是因为其占用空间小。

Unitimes:Ethercluster 旨在成为一个开源的基于以太坊的云架构,与 Infura 相比,它有哪些优势?

Yaz:我很喜欢这个问题!我们最大的的优势在于真正的去中心化。

Infura 是中心化的,虽然他们一直声称自己不是。当以太坊上的每个 DApp 和服务都连接到 Infura 时,就会成为一个安全问题。Infura 可以说他们有可扩展的、高可用性的架构,但它仍然是封闭源代码的,所以我们不知道它到底有多健壮。

Infura 也只将 AWS 用于他们的架构,这是另一个去中心化的地方。想象一下,如果将来 AWS 阻止来自中国的 IP 地址,这会让 Infura 被封锁!因此,Ethercluster 提供了一个开源的替代方案,可以选择构建您自己的。通过开放源码,我们允许他人查看设计并对其进行改进。

我们已经计划同时在至少 3 个云提供商上提供 Ethercluster:1)GoogleCloud,2)AWS,3)Azure。此外,通过拥有文档来制作您自己的 Ethercluster,如果您愿意,您可以将其定制为本地云提供商。可扩展的区块链基础设施应该可以作为所有 DApp 开发人员的开源指南。如果我们只是连接到 Infura,我们就不能说自己是去中心化的。

Unitimes:Ethercluster 可以用 ETH (而不只是 ETC)来搭建吗?怎么做?

Yaz:当然可以!后端的 Ethercluster 使用 Parity,因此,如果要把文档与 ETH 一起使用,只需修改 2 行代码即可完成!我没有用 ETH 测试网站,因为它有很多硬盘空间,但你可以使用文档为 ETH 构建自己的网站。将来,我将向 Ethercluster 添加 Multi-Geth 节点,同时支持 ETH 和 ETC。

Unitimes:我们可以使用哪些云提供商?目前你们在使用哪个提供商?

Yaz:目前这些文档适用于 Google Cloud。许多开发人员现在也在使用 AWS 进行测试。我希望能让 Terraform 支持 Azure 或者替他云服务提供商。

Unitimes:你们每天最多支持多少次请求?如何收费?

Yaz:Ethercluster 目前是免费使用,大家可以用那些文档来自己搭建。

至于处理的请求数量,我还没有进行过完全的压力测试,所以答案并不能完全准确。但是所做过一些测试,当前的估计是每个 Parity 节点每秒可以处理大约 25 个请求。Parity 节点越多,对端点的请求就越多。

Unitimes: 除了用于开发 DApp 之外,Ethercluster 还有哪些用例?

Yaz:一个想法是硬分叉和客户端测试。基本上,我希望 Ethercluster 配置允许协议工程师跨客户端 (如 Parity 或 MultiGeth) 测试新的硬分叉更改,以确保能够达成共识,并确保其按预期运行。

第二个想法是节点验证。如果你对你的网络很感兴趣,你想投资一堆可以运行来支持你的网络的节点。

另一个很酷的想法是 staking。可以用来建立必要的基础设施,适当地质押代币,并成为一个验证者。

自由问答

固定问答环节结束后,参与此次 AMA 的成员可以自由提问。以下为 Unitimes 从群成员的提问中精选的几个问答:

Ethercluster 将来会接入 IPFS 吗?

Yaz:会的,这是我们的主要目标。目前正在和一个很棒的在所 IPFS API 的团队在谈。一切就绪之后我们就会将它接入 Ethercluster。

你好 Yaz。今年 ETC 有什么新进展吗?

Yaz:我们今年 9 月中旬会进行亚特兰蒂斯(Atlantis)硬分叉。它会让 ETC 变得和 ETH 更加可互相操作。此外,ETC Labs 也有很多新的开发工具。我们今年 12 月底可能还会进行第二次硬分叉,叫 Aghartha,但目前还没有确定。

亚特兰蒂斯硬分叉是为了让 ETC 和 ETH 更加兼容吗?

Yaz:是的,亚特兰蒂斯和以太坊的拜占庭硬分叉类似,会让 ETC 和 ETH 更加兼容。而 Agharta 就相当于 ETC 版的君士坦丁堡硬分叉。

你们怎么看待 ETC 和 ETH 的关系?二者是竞争对手吗?

Yaz:不,我把 ETC 和 ETH 看作两个可以互相补充和收益的网络。ETC 的目标不是要成为一台世界计算机,偏爱 PoW,专注于安全;而 ETH 则专注于创新和 PoS。它们有不同的目标,所以 ETC 和 ETH 之间更多的是友谊。

我们知道中国的防火墙把某些国际网站屏蔽了。你认为 Ethercluster 会受到防火墙的影响吗?

Yaz:我认为防火墙对很多人来说是很现实的情况,所以我们把项目开源了。如果 Ethercluster 的网站在中国被屏蔽了,开发者依然可以在网上看到我们的代码,创建自己的东西。这就是开源的魅力,大家可以将 Ethercluster 定制化,在任何环境中使用。

你对「不可篡改性」和「治理」的看法是什么?

Yaz:很棒的问题!我在 Medium 上发表过一篇关于「量化不可篡改性」的文章,Vitalik 还给了我一些反馈。文章链接:https://medium.com/ethereum-classic/quantifying-immutability-e8f2b1bb9301

我认为不可篡改性是关于「权衡」以及决定对哪个社区来说什么是重要的事情的问题。例如,对 ETC 来说,链下状态的不可篡改性是非常重要的。而对于更注重快速创新的 ETH 来说,链的状态并不是那么重要,例如 DAO。

而关于治理,我没有什么想法,因为我更喜欢中本聪的社区治理机制——PoW 共识。

你们为什么用不同的开发语言和框架,例如 nodejs 和 python?

Yaz:在我看来,每个语言都有其优点和缺点。JavaScript 是模范但不是很安全。Python 在科学和人工智能方面非常棒,所以我很喜欢这个语言。Golang 是我在学习的一门新语言,我还想学习 Rust。对 Ethercluster 来说,我在做一个用 Golang 写的命令行应用程序,可以为用户生成云基础设施。

从代码上看,你们的系统里请求不是统一的,有的用 nodejs 去请求节点状态,有的是用的 python。

Yaz:的确是这样,但也要注意他们是容器化的(containerized)。我喜欢与不同的语言打交道,根据工作需要的不同,每个人使用的工具也不同。我也用 Vue。最重要的是 Kubernetes (基于 Docker 的容器云技术)。使用 Docker 的魅力在于 App 使用的语言是什么不重要,因为这能让容器和 Kubernetes 在每个 Docker 容器之间的交流变得非常容易。

来源链接:mp.weixin.qq.com