Aptos预主网——树立新的行业里程碑!

Aptos网络在其类似主网的环境Previewnet中实现了新的性能和吞吐量里程碑。

Aptos预主网——树立新的行业里程碑!

Aptos实验室团队提高了网络的可扩展性和性能。这些变化已经在Previewnet环境中进行了测试。本文描述了2023年11月底结束的Previewnet中实现的一些令人印象深刻的数字和新的行业里程碑。

在一个模拟主网的环境中我们做到了

  • 每秒3万个点对点(p2p)交易的峰值(TPS)。
  • 数小时内维持2.5万个p2p交易的稳定速率。
  • 24小时内处理20亿笔交易。
  • 在90秒内铸造了超过100万个限量系列NFT。

什么是Previewnet?

为了进一步优化我们的系统,社区和Aptos实验室的团队正在不断努力提升Aptos网络的扩展性、性能及稳健性。所有的改进都将在大规模多区域集群上进行全面测试,但要复制全球去中心化平台的微妙特性,还需要考虑异构硬件、可变节点配置、非均匀网络特征以及人类在节点操作中的独特性等因素。

因此,每一个重大的Aptos协议更改都需要在一个能够模拟未来主网环境的测试环境中进行深度测试。这包括由相同的节点运营商部署节点,并具备相应主网节点的所有特征。这是对每个更改进行全面验证的必要条件,以确保新的行为具有可扩展性、高性能、安全性及可靠性。我们将这种测试环境称为“Previewnet”。

随着我们不断积累大量的网络更改,我们的节点运营商会建立一个预览网络,在此我们对网络进行极限负载测试、重载测试以及长时间持续活动测试。本博客总结了我们在2023年11月建立的预览网络。

设置和时间表
以下是近期预览网络的关键统计数据和时间表:

验证器节点数量:125个(比主网高5%)
国家数量:26个(与主网相同)
中本聪系数:33(与主网的17相比)
权益分布:

  • 欧盟:40%
  • 亚洲:25%
  • 美洲:26%
  • 非洲、中东和澳大利亚:9%
  • 设置开始时间:2023年10月30日
  • 测试开始时间:2023年11月6日
  • 测试结束时间:2023年11月21日
  • 总处理交易量:>90亿(超过两周)

预览网络的设置反映了Aptos主网在地理分布、节点数量、按地理分布的权益以及唯一节点运营商数量方面的特点。每个运营商都部署了满足预览网络特定单节点基准的服务器。(如果你想自己运行基准测试,可以按照这里的步骤操作)。

由于每个节点的权益分布较低,预览网络中的中本聪系数为33,而主网为17,这意味着主网应该具有与此测试结果相等或更好的性能。随着新的验证器被添加到主网,网络将进一步去中心化。我们的目标是在主网中达到30+的中本聪系数,这也是为什么要将预览网络设置为能够反映未来主网权益分布的方式。

以下是我们进行的测试的详细信息。

性能与每秒交易量峰值(TPS)

(回顾)迄今为止的历程:今年早些时候,我们展示了第一个完全可重复的性能基准测试,以启动围绕“每秒交易量(TPS)”等性能指标定义的行业范围讨论。我们证明,在100个节点的全球地理分布式网络中,我们的软件堆栈可以实现约2万TPS。快速回顾一下,Aptos在基准测试中实现高吞吐量的以下关键创新:

具有Quorum Store的水平可扩展共识:Aptos使用基于Quorum Store的创新共识机制来实现水平可扩展性。Quorum Store的想法是将数据与元数据解耦,以便数据传播可以发生在共识的关键路径之外。
具有BlockSTM的并行执行引擎:为了扩展执行层,我们设计了BlockSTM,这是我们的并行执行引擎,使用带有乐观并发控制的软件事务内存(STM)来并行执行事务。我们的基准测试显示,我们可以每秒执行16万笔交易。
高度优化的批量存储:Aptos的存储方法结合了持久化和内存中的锁自由稀疏Merkle树,这些Merkle树专门针对Block-STM进行优化,以实现缓存和并行化。
使用管道化处理的资源效率各阶段:将交易处理的各个阶段进行管道化处理,以充分利用资源,使吞吐量仅受最慢阶段的限制(而不是将所有阶段组合成顺序)。管道化有助于节点同时利用其所有资源,从而导致吞吐量显着增加。

实现更高的TPS峰值:使用我们可重复的基准测试,我们观察到存储层正成为我们的瓶颈。我们使用了一个RocksDB的实例,它不能将数据写入数据库超过每秒约2万笔交易。为了解决这个问题,我们引入了一种新的分片存储设计,将状态存储拆分为多个RocksDB实例,以便我们可以并行提交。此外,我们还对我们的执行引擎、状态同步算法和网络堆栈进行了几个改进以提高吞吐量。

所有这些改进最终使我们在预览网络中达到了新的峰值,即每秒超过3万笔交易。

Aptos预主网——树立新的行业里程碑!

未来的旅程:Aptos的目标是进一步提高可扩展性,将每秒10万TPS定为下一个里程碑,继续朝着每秒超过1百万TPS的目标努力。这一雄心勃勃的目标与Aptos建立一个能够为数十亿用户提供服务的网络的使命相符,将引领Web3技术的新一轮采用。实现更高的TPS对于满足Web3生态系统中全球用户基础不断增长和多样化的需求至关重要。

持续的高峰值吞吐量——行业新的里程碑

TPS峰值只是Aptos整体吞吐量故事的一小部分。为数十亿用户构建的网络必须长时间保持高吞吐量。考虑到这一点,我们积极推动网络执行持续的TPS约为2.5万,持续24小时以上。在此期间,网络成功处理了前所未有的21亿笔(带有B)点对点支付交易,在24小时内没有发生任何故障。Visanet每天处理1.5亿笔交易。下面的图表显示了预览网络中这种负载的持续TPS和时间戳。

Aptos网络在一天内处理了超过20亿笔交易——行业新的里程碑!

Aptos预主网——树立新的行业里程碑!
Aptos预主网——树立新的行业里程碑!

并行化顺序工作负载

在讨论高吞吐量时,该行业的大部分关注点都集中在点对点传输上。这在过去是有道理的,因为支付和传输是加密货币最初的用例。然而,这些用例不再完全代表当今区块链中我们看到的工作负载类型。具体来说,与可以轻松并行化的传输工作负载不同,许多现有工作负载表现出顺序属性。它们需要顺序执行,并且会大大降低吞吐量,因为它们不能简单地在执行核心之间进行并行化。

一个例子是限量供应的不可替代代币(NFT)的铸造,具有顺序命名属性。例如,只允许创建100万个NFT的NFT集合,其中每个NFT按其铸造顺序进行唯一索引(即,每个令牌根据其铸造顺序被赋予一个唯一索引,该索引包含在令牌的名称中,例如,“Superstar #143”)。这是NFT的一种常见做法。

无论是限量供应还是顺序命名,都需要按顺序执行,这会大大降低事务吞吐量。为了克服这一点,我们在Aptos开发了一种新颖的技术,即无冲突计数器Aggregators。通过Aggregators,我们可以将顺序计算从关键执行路径中移除,实现并行执行,同时仍然保持必要的顺序工作负载属性(即,尽管并行执行,但执行结果与按顺序执行的工作负载相同)。我们将在即将发布的博客文章中介绍这项技术的详细信息。现在,重要的是Aggregators允许我们对原本是顺序的工作负载进行并行化处理。

在previewnet上使用Aggregators,我们能够在~90秒内铸造完整的100万个NFT收藏,并在~8分钟内铸造500万个NFT收藏,持续吞吐量超过每秒1万个NFT。与顺序执行相比,这提高了10倍(即,不使用Aggregators)。能够无缝地并行化这些工作负载目前在行业中是独一无二的。

在90秒内铸造100万个限量收藏NFT为支持大规模现实世界活动开辟了新的NFT用例。

正如我们之前所分享的,随着时间的推移,Aptos的目标是与我们的同行合作,发展区块链相当于TPC基准的测试标准,作为一种公平和全面的方法来比较不同网络之间的性能。它应该有一套具有代表性的工作负载,可以转化为现实世界的性能,为应用程序构建者和用户提供有价值的信息。通过这篇文章,我们向该基准套件引入了一个新指标——“每秒顺序NFT铸造次数”,未来还将推出更多指标。

我们邀请整个行业将“每秒顺序NFT铸造次数”添加到基准套件中作为一个额外的指标。

灾难恢复演练(DR Drill)

虽然网络从一开始就被设计为可靠、安全和容错,但总是需要为最坏的情况制定计划并建立强大的运营实践。我们强化了每个系统组件,但为所有结果做好准备是至关重要的。如果确实发生了事件,我们需要能够尽快将网络恢复到完全健康状态。为了向网络中注入故障,我们运行了一个实验特性。与我们的节点操作社区一起,我们能够识别并执行一个脚本,该脚本能够快速将网络重新上线。

主要经验教训

现实世界更加复杂:previewnet再次确认了我们的论点,即任何协议更改都必须在具有广泛极端和持续工作负载的真实环境下进行认证。尽管我们已经在大型、多区域集群上测试了我们的更改,但Aptos主网是独一无二的,具有比可以测试的更多特性、变量和异构性。因此,我们发现了一些微妙的性能和可靠性问题,否则可能会错过。这些问题源于操作系统、硬件、部署架构、存储技术、网络基础设施和运营商最佳实践的异构性。虽然测试环境对于验证更改是必要的,但与现实世界相比,它们总是不够充分。

读取路径同样重要:大多数区块链性能讨论都围绕写入路径延迟和吞吐量展开。然而,很少有人提到读取路径,例如全节点、API服务和索引器的读取复制吞吐量和延迟。这是有问题的,因为现在区块链用户依赖这些服务来读取和/或验证区块链状态。因此,如果读取路径无法保持同样高(或更高)的性能,用户体验将会受到影响,无论写入路径处理事务的速度有多快。我们在previewnet中短暂地见证了这一点,提醒我们读取路径不能被视为二等公民。

高质量的工具是无价的:previewnet明确提醒我们,自动化、高质量的工具是至关重要的。在跨异构部署运行大规模实验时,要考虑的变量数量可能会压倒一切。特别是当调试复杂的交互和意外行为时,更是如此。工具是管理这种复杂性并有效识别手头问题的唯一方法。例如,有几个节点在测试期间出现CPU或磁盘瓶颈的情况,我们依靠自动生成的火焰图和指标分析来帮助识别根本原因。同样,在previewnet配置过程中,我们利用单节点基准测试帮助操作员快速验证其硬件选择的性能和正确性,在网络上线之前节省了时间。最后,网络的初始设置时间比预期要长得多,原因是有几个不一致的配置,这表明在观察和部署方面需要更好的工具。工具在关键时刻可以节省时间。

向社区致敬
Previewnet对Aptos Network及其运营商来说是一次宝贵的锻炼。我们非常感谢拥有一个令人惊叹的节点运营商社区。他们忍受着苛刻的时间表、升级要求并积极监控网络。这种友情和热情推动我们在整个previewnet期间进行了更大、更好的实验。以下是来自节点运营商社区的一些评论。

“Aptos previewnet processes继续帮助我们的团队从硬件和软件的角度突破我们的技术界限。这个过程虽然严格但每次看到所取得的进步都值得。Aptos团队继续在熟练和专业方面领先!“- Republic Crypto
“我在Previewnet 2期间学到的最重要的事情之一是,验证器和VFN之间的延迟非常重要。同样,状态同步性能是真正将网络结合在一起的粘合剂。看到状态同步改进带来显著的性能提升非常令人兴奋。30k TPS太离谱了!“- Lavender Five

“整个设置、配置、迁移和升级过程中,体验非常好。一些升级进行得很顺利。一些升级没有成功,但我们从失败中学到了更多,所以总会有积极的一面。”- Artifact

“能够在测试团队改进的同步方面(例如)测试多种不常见的场景,这很棒。此外,能够测试团队在DAG共识升级方面的努力以及同时将网络推向极限也很棒。Aptos网络的弹性在这次Previewnet中得到了证明,几个知名的节点运营商共同努力优化硬件要求,为Aptos的光明未来铺平了道路。“- Luganodes

以上内容均转载自互联网,不代表AptosNews立场,不是投资建议,投资有风险,入市需谨慎,如遇侵权请联系管理员删除。

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年11月20日 下午10:52
下一篇 2023年12月13日 下午3:28

相关文章

发表回复

登录后才能评论
微信扫一扫
百度扫一扫

订阅AptosNews

订阅AptosNews,掌握Aptos一手资讯。


窗口将关闭与 0

本站没有投资建议,投资有风险,入市需谨慎。