如何衡量一条区块链的性能?Solana等区块链的“高TPS”口号已经无用了?

多链现在已成为现实。以太坊缺乏可扩展性导致大规模迁移到新一代L1。这些L1中的大多数使用EVM,这使得它们与以太坊钱包和开发工具兼容。但是Solana已经从头开始完全重建了它的堆栈。Solana声称是现有最快的区块链。所以它引出了一个问题:Solana比EVM链快多少?

L1区块链的TVL增长,图片来源:TheBlock

首先,我们需要就如何衡量性能达成一致。自古以来,新的区块链就一直在宣称它们的性能比以太坊高出多少。这是一种老调常谈。你会看到大量的数字和匆忙组合的图表,比较自我报告的TPS。不幸的是,这些TPS数字通常来自他们自己的营销材料,而这些材料几乎都是废话。

L1本身发布的大多数基准测试都测量简单价值转移的TPS——即,将币从一个账户转移到另一个账户。简单的转账非常便宜,因此会产生庞大的数字,每个人都喜欢庞大的数字。但实际上没有区块链在这样的传输上遇到瓶颈,而且这种活动并不能反映现实世界的使用模式。此外,其中许多数字是在开发网络或测试网络上生成的,而不是在主网上生成的。我们不关心某人的软件抽象地可以做什么:我们关心当前主网上的可能性。

实际上,没有一种统一的方法来对TPS进行基准测试。基准测试中经常出现这种情况。这是一个混乱而令人担忧的领域,充满了误导性营销、过度拟合/“应试教学”和作弊。

好的。那么我们应该如何实际测量L1性能呢?

这是一个棘手的问题,因为性能有多个维度。

首先,性能始终是针对去中心化的一个妥协。与主网环境相比,高度中心化的测试网和开发网可以产生难以置信的数字。许多主网在去中心化方面偷工减料,这挤压了额外的性能。

但是,假设我们想忽略去中心化,只关注性能。好吧,众所周知,对区块链性能进行基准测试非常困难,因为大多数新链的数据可见性都很差。

Terra生态行情网站Coinhall:无论Terra2.0最终结果如何,将继续支持以完成集成:5月18日消息,Terra生态行情网站Coinhall发推称,不知道Terra2.0的结果是什么,也无法评论最好的提案会是什么样子,但将在继续支持Terra1.0的基础上完成集成,以便Terra用户仍然可以在任一链上使用这个熟悉的平台。[2022/5/18 3:25:02]

7年来,以太坊的性能得到了高度的研究和很好的理解。但是当你开始探索更新的链时,它们中的大多数工具都少得多,可观察性差,而且还在不断发展。当您阅读本文时,这些基准可能已经过时了。

此外,基准测试总是随意的,并且充满了陷阱。你能做的最好的就是选择一个衡量有价值的东西的基准,然后尽可能仔细地确定你的结果。这就是我们将在这里尝试做的事情。

但是我们所说的性能是什么意思呢?性能有两个方面:吞吐量和延迟。

您可以将区块链性能可视化,例如流过管道的水。交易就是水——你希望大量交易同时流过管道。但是管道的长度决定了它的延迟——如果一个交易需要很长时间才能得到确认,即使很多交易可以一次得到确认,那也是不理想的。

延迟可以细分为区块时间和最终确定时间。出块时间和完成时间很容易衡量。

但是要实际测量吞吐量,您需要一个标准的测量单位。什么的吞吐量?

我们没有使用代币转移,而是查看了以太坊上最耗gas的产品之一:UniswapV2,并将其变成了一个非常简单的基准。如果你用UniswapV2风格的交易填满了整个区块,每秒有多少笔交易可以清算?

美国FDA政策蓝图:应研究如何利用区块链跟踪产品:金色财经报道,美国食品药品监督管理局(FDA)周一公布了一项针对食品安全的新计划,在发布的一份政策蓝图中引用了区块链技术在跟踪产品中的潜在作用。根据该蓝图文件,总体计划的主要组成部分是使用新兴技术来增强现有系统并构建新系统。文件称,当研究行业如何通过数字方式跟踪飞机、行程共享和包装货物的实时移动,或者企业如何利用大数据来识别趋势时,很明显,FDA和利益相关者应该研究如何利用新技术,包括但不限于人工智能、物联网、传感器技术和区块链。[2020/7/15]

我们选择这个基准是因为1)它简单且易于测量,2)每个区块链都有一个UniswapV2风格的AMM在生产中,3)它是常见的智能合约使用模式的典型。

对于大多数具有gas模型的区块链,这种粗略的练习应该很简单。首先,找到区块gas限制和出块时间,推导出链的gas/sec吞吐量;接下来,找到一个Uniswapv2风格的AMM并选择一笔SwapETHforTokens等效交易;最后,将第一个数字除以第二个数字,得出如果它的区块充满相同的AMM交易,它将达到多少tx/sec。

注意:这不是一个完美的基准!它是特殊的,它不考虑可并行交易,并且它不能代表每种使用模式。但智能合约的使用始终是幂律分布的,并且最常用的Dapps往往是AMM,因此在一组基准测试中,我们认为这有助于全面了解性能。

因此,事不宜迟,让我们顺着列表往下看。

Uniswapv2每秒交易数量:平均9.19,最大18.38

平均出块时间:13.2秒

最终确定时间:66秒

假设和方法:在1500万gas目标下,即以太坊与EIP-1559达到平衡时,以太坊每秒可以进行9.19次交易;在3000万的gas限制下,它可以实现每秒18.38次交易。我们将此swapExactETHForTokens交易用作具有代表性的链上一跳交易。假设区块生产者可以用Uniswap交易完美地填充1500万gas限制区块,每笔交易花费123,658gas,这意味着我们可以将15M/123,658=~121.3个交换放入一个区块中。如果我们假设区块每13.2秒到达一次,这意味着以太坊每秒处理121.3/13.2s=~9.19Uniswapv2swap。

直播|“后浪”仙女周|热币-Merry如何乘风破浪:金色财经 · 直播主办的《 币圈 “后浪” 仙女直播周》第7期16:00 Hotcoin Global|首席品牌官 Merry将在直播间聊聊“币圈‘后浪’仙女如何乘风破浪”,感兴趣的朋友扫码移步收听![2020/7/1]

我们将对列表中的其他EVM链使用类似的计算。

Ubeswap每秒交易次数:平均24.93,最大49.86

平均区块时间:5秒

最终确定时间:5秒

假设:本次swap交易是代表交易、1000万gas目标和2000万gas限制。

Quickswap每秒交易次数:平均47.67,最大95.33

平均出块时间:2.5秒

最终确定时间:Polygon上有两种最终性概念

1.概率:这类似于大多数以太坊风格的区块链,其中规范链取决于完成的最多工作。在Polygon的案例中,Bor层的最终确定性取决于难度较高的分叉。

2.可证明:这类似于Tendermint/IBFT,在规范链上的绝对多数签名。这通过检查点发生在Heimdall层。这些检查点被提交给以太坊。

重组和分叉可以发生在Bor层,但不能发生在Heimdall。检查点是Bor链状态的快照。一旦一个区块被包含在一个提交的检查点中,它就不能被重新组织。检查点大约每25分钟提交一次。

赵锡军:央行数字货币重点在于如何与传统货币进行融合:对于“数字货币研发重点和难点”的看法,中国人民大学财政金融学院副院长赵锡军指出,其中涉及两个问题。一是技术是否成熟。比特币实际上就是数字货币最初的雏形,从技术层面来讲,比特币是有一些缺陷的,一旦支付量变大,就会出现支付困难或者效率下降。另外,比特币出现过被盗等安全问题。而据央行货币研究所所长穆长春的一个内部研讨会指出,央行数字货币,效率是非常高的,支付能力很强,说明已经克服技术方面的问题。二是数字货币被引入后,如何与传统的货币和货币管理运行体系进行融合。数字货币的发行,是基于区块链的基础,它是有上限的,从目前来讲它的发行规模取决于互联网的算力。尽管穆长春所长也提到,央行数字货币现在可以突破区块链的上限限制,但是破获以后,它的发行究竟是怎么样的,是否能够跟我们目前的人民币发行顺利融合,这需要在制度层面有所安排。(澎湃新闻)[2020/4/22]

假设:此swap交易代表交易、1500万gas目标和3000万gas限制。

TraderJoe每秒交易:平均31.65次,但由于其弹性出块时间,在最大吞吐量下,AvalancheC链可以处理足够的gas以达到每秒175.68次交易。但是,将吞吐量维持在该水平会导致费用成倍增加。

平均出块时间:平均2秒(Avalanche是一种具有弹性出块时间的无领导者协议:只要支付足够的最低费用,就可以随时产生区块。AvalancheC链曾有过在1秒内产生>10个区块的时期.)

最终确定时间:出块后约1.75秒

假设:此swap交易是代表交易,当前800万gas限制。

Avalanche相对难以比较,因为它的区块生产机制与以太坊和PoS链如此不同。对于Avalanche,它以最大吞吐量执行的操作与以平均吞吐量执行的操作之间存在很大差异。

动态 | V神阐述如何进行ETH委托挖矿:V神回复网友提问“1.可以通过合约合租一个validator(平民化参与,共享投票身份)吗?2.一个客户端可以跑多个valifator (共享机器)吗?”表示,“你开一个validator,需要设置两个公钥:签名的公钥和取款的公钥。Phase 2后,不一定需要设置取款公钥,也可以设置取款合约。签名的私钥能withdraw,withdraw完成后validator里面的资金都给取款合约的地址。所以你开新的validator到时候,可以先发比如1以太币,设置取款合约,这个合约的规则是,谁deposit多少谁按照比例withdraw多少。一段时间后,你发withdraw的交易。现在因为奖励这个validator的balance是33.6以太币(加 5%),33.6以太币给合约,合约的规则分配1.05给你,8.4, 10.5和13.65 给其他的参与者。签名的私钥是你的,谁能withdraw多少的规则是合约定的。别人能看一个还未activated的validator的withdraw合约的规则,如果他们觉得是合理的,则他们能发他们的币给这个validator,这个是委托的方法。”[2019/10/22]

PancakeSwap每秒交易次数:194.60

平均区块时间:3秒

最终确定时间:75秒

假设:这个swap交易是代表交易,8000万gas限制。

这结束了EVM区块链的基准测试——其虚拟机以以太坊为模型的区块链。由于所有EVM链都使用相同的gas模型,我们可以将gas/sec视为吞吐量的基准。实心条表示目标吞吐量,空心条表示限制。

EVM链的Gas/sec

您可以想象您以绝对极限运行EVM,这种情况就是币安智能链发生的。如果你想从智能合约中获得更高的性能,你将不得不完全远离EVM。

Orca每秒交易次数:273.34

区块时间:590毫秒

最终确定时间:13秒

这是我们计算这个数字的方法。这是一个笨的方法。

我们首先想为Solana找到一个等效的“gaslimit”。你在区块浏览器上找不到任何这样的数字。我们首先询问了一些我们认识的Solana开发人员,但似乎没有人确切知道是否存在这样的限制。于是我们卷起袖子踏上旅途,一探究竟。

我们首先了解到Solana确实有类似gas的东西,称为计算单位(CU)。从我们与验证者的对话来看,大多数人似乎认为Solana验证是“争分夺秒地在区块时间内打包尽可能多的交易”,但实际的限制是每个区块只能包含4800万个CU。

其次,只有有限数量的CU可在单个区块中写入单个帐户。这个限制是为了防止过多的交易写入同一个账户,从而减少一个区块的并行性——尽管这正是在大规模拥塞期间发生的事情,例如在流行的IDO期间,当所有交易都在竞争使用单个合约时。

每个帐户的限制为1200万。如果您遵循这个1200万帐户CU限制、主网上590毫秒的区块时间以及每次Orcaswap的74,408CU成本,我们得出的理论限制为273.34swap/秒。

这个数字似乎低于预期!为了让我们相信这个数字,我们希望通过经验验证这种方法。

为了确认我们正确地测量了它的性能,我们决定直接对Solana进行垃圾邮件攻击测试。出于显而易见的原因,我们不想向主网发送垃圾邮件,因此我们针对Solana开发网。请注意,Solana的开发网运行在较小的集群上,因此比主网具有更快的出块时间,与主网相比,这将提高其性能。给定380毫秒的区块时间,我们应该期望开发网每秒清算424.40次swap。

我们在开发网上向OrcaSOL-ORCA交易对发送垃圾邮件,以查看我们可以在单个区块中进行多少Orcaswap,然后推断为最大吞吐量。

在开发网区块高度106784857中,我们设法实现了184次Orcaswap

我们设法达到的最高数字是单个区块中的184次swap。假设区块时间为380毫秒,这给我们在开发网上实现484.21swap/秒。。这似乎证实了我们的分析方法是正确的,因此这意味着Solana的主网可能在AMM上执行大约273次swap/秒。

当然这只是一次测试运行,所以这是我们的代码-我们鼓励您使用它并与我们分享您的结果。

我们在这里掩盖了大量细节,如果没有我们在Blockdaemon的朋友的帮助,这一切都是不可能的。如果您想了解执行此操作所需的详细信息,请查看第2部分,我们将在其中介绍技术细节。

您可能会看到这一切并想知道:但我认为Solana通常能够执行3000TPS?

区块浏览器衡量Solana的TPS的方式可能会产生误导——它将内部共识消息视为交易,这是其他区块链所没有的。Solana大约80%的吞吐量是共识消息。减去这些,你剩下大约600TPS,其中大部分是非常便宜的Serum交易。只要接触到足够多的其他合约,Solana也可以在生产中实现更高的性能。

AMM测试:Uniswapv2风格的swaps/秒性能

那么这一切的结果是什么?

首先,不要把这当成福音。自己算算。

其次,请记住,所有这些区块链都是移动目标。它们不断被优化,技术也在迅速发展,而任何基准都是即时快照。我们希望看到更多独立组织创建标准化基准,但这是我们最好的尝试。

第三,请注意,这些区块链之间的性能差异并不像宣传的那么大。以太坊和最好的链之间的性能差异大约是10-25倍,而不是100倍或1000倍。没有人能从线性化的VM事务中获得如此出色的性能。这将需要更多的工作和优化。

第四,如果你想要真正的高性能,你必须放弃EVM。我们在这里只对Solana进行了基准测试,但还有其他非EVML1,例如NEAR和Terra,它们也实现了更高的性能。但像Solana一样,他们无法从围绕EVM的工具和生态系统中受益。

第五,用户现在对非以太坊L1的性能考虑并不那么敏感。他们更关心生态系统的整体实力、良好的用户体验和低费用。这些区块链目前没有在性能上进行竞争,因为它们实际上都没有被用于容量,除非在罕见的峰值期间,例如在IDO或市场崩溃期间。

我们预计所有主要L1的性能都会随着时间的推移而提高,因为开发团队会花费越来越多的时间来调整典型使用模式的性能。毫不奇怪,在早期,这些区块链中的每一个都没有得到很好的优化!

但总的来说,我的印象是:以太坊是智能合约操作系统的MS-DOS。但是当前的区块链时代将我们带入了Windows95时代。

MS-DOS到Windows95

下一代区块链代表了显着的进步,但要达到主流采用还有很长的路要走。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

银河链

火星币NFT对音乐产业的影响

NFT的复兴正在将所有的媒体从传统的形式和商业模式转变为数字化的原生模式。视觉艺术一直是突出的形式,其交易金额已达数十亿美元,市场规模和参与者持续增长.

NEAR为什么“使用以太坊登录”会改变游戏规则?

使用以太坊登录是互联网上用户选择的游戏规则改变者。用户现在可以使用控制其区块链帐户的相同密钥登录,而不是提交“大登录”,并且无需中间人。这种方法有希望但不能保证重新平衡有利于用户的功率动态.

[0:15ms0-1:819ms