主页 > imtoken官网下载2.0 > 我测试了以太坊 2.0,最硬核的

我测试了以太坊 2.0,最硬核的

imtoken官网下载2.0 2023-04-14 07:26:05

以太坊节点类型_搭建以太坊公链节点_sitebihu.com 以太以太坊价格

Prysm 是 ETH2.0 的优秀实现,也是目前 Medalla 测试网上运行最多的实现。 Prysm采用Beacon Chain Node + Validator Node的架构,前者负责同步区块数据,后者负责签署区块和见证。 由于Validator Node可以同时加载多个验证器,为了对其可以加载的验证器数量以及相关验证器部署步骤有一个定性和定量的了解,我们特地安排了本次测试。

测试结论

我们复制了 Medalla 测试网,搭建了 HashQuark 自己的 ETH2.0 Beacon Chain,进行了两轮测试,共计 14 个测试用例,运行了数十万个 Validator。 Prsym 的实现非常出色。 对于想要用少量ETH(几十到上百个Validator)参与Ethereum Staking的普通用户,一台4核8G的云服务器就可以流畅运行Beacon Chain Node和Validator。 但是运行过程中遇到的技术问题以太坊节点类型,不是技术人员的普通用户是无法解决的。

对于运行数万个Validator的专业PoS矿池来说,需要更高的配置才能保证超高的出块率。 出块率会随着验证者数量的增加而降低。

接下来,我们将在公测网Medalla上进行下一轮测试,以更贴近主网环境。 目前,我们有近 3000 个验证节点在 Medalla 上正常运行,占全网的 5%。

测试环境

我们使用 geth 搭建一个私有的 ETH1.0 网络。 与公共测试网络 Rinkeby 或 goerli 一样,我们使用“clique”权威证明算法,因为它需要的资源少于 PoW。 Prysm 在测试时使用最新的发布版本。

以下测试使用的云主机部署,我们选择通用的N机型,CPU平台为Intel/Broadwell。 系统使用Ubuntu 18.04.2 LTS。 geth 版本是 1.9.19-stable,Prysm 版本是 v1.0.0-alpha.24。

第一阶段初步尝试

以太坊节点类型_sitebihu.com 以太以太坊价格_搭建以太坊公链节点

测试程序

下面我们先简单测试一下不同验证人数量对服务器资源的压力,做一个基本的了解。

使用最基本的2个ETH1.0节点+2个ETH2.0信标链节点+2个Validator Node架构搭建私有网络作为起步方案。 网络稳定运行一天为观察期。

测试用例

下表概述了我们的测试:

以太坊节点类型_sitebihu.com 以太以太坊价格_搭建以太坊公链节点

表格1

测试指标

搭建以太坊公链节点_sitebihu.com 以太以太坊价格_以太坊节点类型

在测试过程中,我们收集了各个实例服务器的CPU、内存、磁盘IO、网络带宽IO等指标。

测试过程

测试一中,2核4G信标链节点内存阶段性提升。 运行了大约6个小时后,内存使用率达到100%,导致进程因内存不足报错而停止,CPU使用率也逐渐升高。 如下所示:

sitebihu.com 以太以太坊价格_以太坊节点类型_搭建以太坊公链节点

图1

以太坊节点类型_sitebihu.com 以太以太坊价格_搭建以太坊公链节点

图 2

随后,我们将信标链节点的配置升级为4核8G。

以太坊节点类型_sitebihu.com 以太以太坊价格_搭建以太坊公链节点

例2-5中,将验证者数量增加1k-10k,以观察服务器CPU、内存、磁盘IO、带宽等指标数据,无压力,无异常。

之后,我们在不同区域部署ETH2.0节点,观察不同区域网络互联是否会对各项指标产生较大影响,实验结果正常。

测试总结

根据私网测试情况,信标链节点推荐4核8G配置,Validator节点2核4G配置足够,但导入密钥文件时会占用1核CPU,CPU占用率为100%(如下图所示),保险起见,建议配置4C6G。

搭建以太坊公链节点_以太坊节点类型_sitebihu.com 以太以太坊价格

图 3

另外,本阶段测试对磁盘I/O性能和外网带宽要求很低,可能是私有网络的原因。 具体对应的性能要求需要在ETH2.0官方测试网进行测试。

第二阶段对比测试

以太坊节点类型_sitebihu.com 以太以太坊价格_搭建以太坊公链节点

测试程序

第一阶段主要测试不同数量的验证者对服务器资源的压力。 此外,验证者的出块和见证也是验证者的重要指标。 为此我们进行了对比测试。 在同一个网络中,不同区域部署不同数量的验证节点进行对比测试。

测试指标

测试过程中,我们会收集CPU、内存、磁盘IO、网络带宽IO、应出块数、实际出块数、应见证块数、实际见证块数等指标。每个实例服务器。

测试用例

以下是我们的测试用例:

以太坊节点类型_sitebihu.com 以太以太坊价格_搭建以太坊公链节点

表 2

以太坊节点类型_搭建以太坊公链节点_sitebihu.com 以太以太坊价格

ETH1.0网络由三台2核4G云服务器组成,两台在香港,一台在圣保罗。 出块时间设置为 15s。

我们在香港、新加坡、洛杉矶、法兰克福、圣保罗和伦敦部署了信标链节点和验证节点。 每个区域的信标链节点和验证者节点通过内网连接。 配置及对应的验证人数量如上图所示。

实例1和实例2都有1k验证人,区别在于验证人节点的配置,用于比较不同配置的验证人数量对指标的影响。

示例 3、4、5、6 增加了验证器的数量。 由于在实践中我们不太可能在一台机器上拥有超过 10k 的验证器,因此我们将测试计数停止在 20k。

每个区域中的信标链节点都连接到其他节点。

测试网参数选择

我们首先在 ETH1.0 网络上部署存款合约,生成所需数量的验证器密钥后,我们批量发送存款交易。 Prysm 启动时修改了以下参数:

事实上,由于我们提前发送了所有存款交易以满足最早启动时间设置的最小验证器数量,因此整个 ETH2.0 网络在 1599811207(2020-09-11T16:00:07+08:00) 上线.

统计和测试结果

我们额外部署了一个信标链节点来连接ETH2.0私网查询数据。 添加参数--slots-per-archive-point=1,持久化存储每个block的数据以太坊节点类型,从而加快查询速度。 添加参数--rpc-max-page-size=1000可以让我们每次查询更多的数据,从而减少请求次数,加快整体速度。