Paradigm:flood——支持EVM节点测试的负载测试工具

互联网 阅读 719 2023-06-07 17:15:00

简介

负载测试是开发弹性、高性能数据系统的关键步骤。然而,负载测试尚未广泛应用于加密货币基础设施的开发。我们很高兴能够通过引入flood来弥补这一差距,这是一个专门为RPC端点的性能分析而设计的基准测试工具。

我们最初构建的flood目的是优化Reth,并了解其在各种负载下的延迟和吞吐量。然而,我们认为,除Reth之外,flood在优化许多类型的加密基础设施的性能方面具有重要的效用。

我们很高兴在Apache/MIT许可下将flood作为免费的开源软件进行开源。它的代码和安装说明可以在Github存储库中找到。Flood既可以从命令行使用,也可以作为python库使用。还有一个Docker的flood镜像,便于集成到CI/CD和其他类型的管道( pipeline)中。

什么是负载测试,为什么它很重要?

负载测试指的是测量系统的性能特征如何受到不同类型的工作负载的影响。这种方法背后的关键见解是,当系统承受越来越多的负载时,吞吐量、延迟和错误率等性能指标通常会降低。因此,观察不同受控负载下的系统可以发现系统的瓶颈、故障模式和最终性能能力。

负载测试获得的信息可以通过多种方式加以利用。当系统处于主动开发状态时,负载测试会突出显示最需要改进的系统瓶颈。在比较两个系统时,负载测试可以揭示哪个系统性能更好或更可靠。作为一种特殊情况,负载测试可以比较单个系统的两个不同的硬件或软件配置。在每种情况下,负载测试都可以开发高度优化的系统。

如何加载测试区块链节点?

我们的重点是RPC,这是通常用于从区块链节点提取数据的通信协议。

目前,测量RPC性能最常用的方法不是负载测试,而是延迟测试:你向RPC节点发送请求,并测量获得响应所需的时间。各种RPC提供程序的延迟测试可以在各种网站上找到。不幸的是,这种类型的测试提供了有限的节点性能视图,因为它几乎没有揭示系统在负载下的行为(详情请参阅我们关于测量延迟和吞吐量的文章)。

在区块链的环境中,工作负载可以在两个重要方面发生变化。典型的变量是规模。与每秒100个请求的负载相比,每秒10,000个请求的负载会给系统带来更大的压力。另一个负载变量是RPC方法。对于从区块链节点提取的每种类型的数据,都有不同的RPC方法。例如,区块vs交易vs日志vs跟踪。每个RPC方法都将不同类型的负载放在系统上。一些RPC方法受存储IO的约束,而另一些方法受CPU的约束。

什么是flood?

考虑到这些原则,我们开发了一个称为flood的负载测试工具。flood通过以下方式为RPC端点的性能特征提供了前所未有的视角:

1)采用负载测试而不是延迟测试;

2)将测试覆盖范围扩展到所有相关的RPC方法。

flood由3个基本部分组成:

调用生成引擎:flood生成大型参数化RPC调用集,随机抽样,分布类似于不同类型的区块链工作负载。flood利用Paradigm Data Portal数据集来确保全面覆盖区块链历史。

负载测试引擎:flood然后调用Vegeta(一个由@tsenart在Go语言中编写的高性能负载测试工具),使用这些调用对RPC端点进行负载测试。

报告引擎:在执行测试后,flood用各种图表、表格和报告总结结果。这些摘要很容易集成到脚本和数据管道中。

这些组件中的每一个都是高度可配置的,使flood能够覆盖广泛的测试场景和环境。

flood能做什么">在flood的典型操作中,用户指定他们想要测试的RPC方法以及RPC端点列表。例如,你可能希望在两个版本的Reth上测试eth_getLogs的性能。随后,flood将针对这些RPC端点运行不同的受控负载。例如,它可能以每秒1,000、2,000、4,000和8,000个请求的速度运行eth_getLogs。继而,Flood将显示表格和图表,总结性能指标如何随负载变化。输出与下图相似的图标:

性能指标在负载下降低的特定方式为了解系统的瓶颈和最终性能容量提供了丰富的见解。有关解释和利用负载测试数据的详细信息,我们推荐阅读Cesarini的「Designing for Scalability with Erlang/OTP」第15章。

除了这一简单的操作模式,flood还提供了高级功能,以适应各种类型的用户:

Flood可以使用不同的负载测试计划,包括:“压力测试”(随着时间的推移逐渐增加负载),“峰值测试”(一个大的突然负载随后是小负载)和“浸泡测试”(长时间运行负载)。

flood可以协调负载测试,在每个RPC节点上以本地模式运行,以消除网络瓶颈造成的不便。

flood有一个“equality”测试模式,检查每个RPC端点是否返回相同的响应。

为什么构建flood">在Paradigm,我们正在开发一种名为Reth的新节点实现,性能是其主要目标之一。我们开发flood是为更详细地描述Reth的性能。我们已经使用flood发现了在各种工作负载和系统配置下出现的许多Reth性能瓶颈。这些瓶颈随后得到了纠正。通过flood,我们创建了一个紧密的反馈循环,Reth开发者可以充分了解任何代码库更改如何转化为端到端系统性能。

在Reth之外,我们相信flood将能够帮助解决许多与RPC节点相关的未解决的问题:

运行节点时,哪些硬件规格最重要?存储IO与RAM速度、RAM容量与CPU速度的相对重要性是什么?RAID值得吗?

对于每个第三方RPC提供商,每个RPC方法的有效速率限制是什么?

哪个节点客户端为不同类型的工作负载提供了最佳性能?

结论

在这篇文章中,我们介绍了flood,这是一个负载测试工具,它提供了一个前所未有的区块链节点性能特征视图。虽然我们最初构建flood是为优化Reth的开发,但我们相信它将为其他类型的高性能加密基础设施的开发释放更多活力。我们期待看到更多人使用flood来构建其高性能和可靠的系统。

免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
上一篇:盘点 Ordinals 爆火后带来的新机遇 下一篇:近期值得关注的新项目一览

您可能感兴趣

  • 解读CKB版 “闪电网络” Fiber Network:比特币可编程性扩展的另一种思路
    解读CKB版 “闪电网络” Fiber Network:比特币可编程性扩展的另一种思路

    作者:NingNing行业周期与宏观金融周期共振,加密行业正处在与 2019 年相似的整体性迷茫之中,现阶段不仅流动性枯竭,叙事貌似也在枯竭。市场不但对 VC 叙事兴趣阙如,对反 VC 的 Meme 叙事也已经疲倦。就像每次哲学危机,人们都会回归柏拉图寻找出路,当加密行业危机时,我们也需要回归比特币、回归中本聪。正如 CKB 生态 RGB++ 协议创始人 Cipher 在最新 Blog 里所阐述的,加密行业需要对以太坊 “链上计算” 的路径依赖进行反思,回归P2P经济学,让计算归于链下,让验证归于链上。因

    每日资讯 2024-09-02 12:06 1313
  • 面对NFL球员工会起诉,“退圈”的DraftKings竟主动承认NFT是证券?
    面对NFL球员工会起诉,“退圈”的DraftKings竟主动承认NFT是证券?

    作者:Zen,PANews近日,美国国家橄榄球联盟球员协会 (NFLPA) 指控数字体育娱乐和游戏公司DraftKings 逃避了其 NFT 球员许可协议的付款义务。在放弃NFT业务后,涉嫌出售未注册证券而遭到集体诉讼的DraftKings又背上了一起官司。而有趣的是,在与NFLPA的纠纷中,DraftKings的立场似乎已从反驳转变为积极承认“NFT就是证券”。放弃NFT业务:驳回集体诉讼的动议遭到否决今年7月底,Draftkings在给用户的电子邮件中表示:“经过慎重考虑,DraftKings 决定终

    每日资讯 2024-09-02 12:06 1421
  • 简析两种最新比特币智能合约实现方案:OP_NET与Arch有何区别?
    简析两种最新比特币智能合约实现方案:OP_NET与Arch有何区别?

    作者:Cookie过去半个月,OP_NET 与 Arch 这两个比特币主网上的智能合约实现方案引发了较多的讨论。有意思的事情是,OP_NET 这个名字与大家熟悉的 OP_CAT 很像,都以「OP_」开头,具有很强的、让大家认为这哥俩差不多的迷惑性。所以,在开篇要和大家先提一嘴 OP_CAT。首先,OP_CAT 是比特币操作码,从去年开始有以「量子猫」Quantum Cats,也就是「大巫师」Taproot Wizards 的创始人 Udi Wertheimer 为首的社区力量一直在呼喊要「复活」OP_CA

    每日资讯 2024-09-02 12:06 1322
  • 争议不断,以太坊正在失去“万链之王”的权威
    争议不断,以太坊正在失去“万链之王”的权威

    作者:Climber,金色财经近期围绕以太坊的话题和争议越来越多,不仅 Vitalik 本人需要下场解释观点,就连以太坊基金会也要发布公告来平息社区的质疑声。在本轮牛市周期中,以太坊的表现可谓平平。而美国以太坊现货 ETF 的通过也并未让 ETH 走势如投资者期待般爆发,相反却在币价方面越走越低。这就不免让有着「万链之王」美誉的以太坊逐渐失去投资者和社区的尊重,进而质疑起有关以太坊的方方面面。争议不断,以太坊亟需重塑权威最近一段时间以来社区成员对 Vitalik 言论观点、以太坊基金会乃至以太坊生态系统的

    每日资讯 2024-09-02 12:06 1021
  • 从《黑神话:悟空》谈起,GameFi何时能取得真经?
    从《黑神话:悟空》谈起,GameFi何时能取得真经?

    作者:YBB Capital Researcher Zeke前言本文是市场垃圾时间中的一些闲聊,需要对传统游戏市场有一定程度了解。大家可以把这篇文章当作日记或者随想观看,这些只是我在游玩《黑神话:悟空》之后对GameFi的一些粗浅思考,以及对这个赛道未来的看法。一、游戏科学的九九八十一难三天全网销量破千万、Steam玩家同时在线峰值破235万、多家品牌联名周边销售爆火、国家级媒体多次采访、多个游戏取景地可凭游戏通关记录终身免费进入、86版《西游记》YouTube观看量超400万。以上,是《黑神话:悟空》上

    每日资讯 2024-09-02 12:06 710
  • Gavin Wood:如何防止女巫攻击进行有效空投?
    Gavin Wood:如何防止女巫攻击进行有效空投?

    演讲:Gavin WoodGavin 近期一直在关注的女巫攻击(civil resistance)的问题,PolkaWorld 回顾了 Gavin Wood 博士在 Polkadot Decoded 2024 上的主题演讲,想要探究 Gavin 在如何防止女巫攻击上的一些见解。什么是女巫攻击?你们可能知道,我一直在研究一些项目,我在编写灰皮书,专注于 JAM 项目,也在这个方向上做了一些代码的工作。实际上,在过去的两年时间里,我一直在思考一个非常关键的问题,这个问题在这个领域中非常重要,那就是如何防止女巫

    每日资讯 2024-09-02 12:06 1268
  • 市场热议,链抽象将成加密新叙事?
    市场热议,链抽象将成加密新叙事?

    2024年,加密货币领域的技术创新持续加速,链抽象(Chain Abstraction)逐渐成为行业内的焦点。链抽象技术的核心在于通过隐藏底层技术的复杂性,让用户能够更加便捷地在多个区块链之间进行操作。传统的区块链技术通常要求用户掌握不同链的操作流程,并需要应对跨链操作中的技术难题,这极大地吸引了新用户的进入。而链抽象的出现,则为这些问题提供了有效的解决方案,成为Web3建设不可忽视的重要一环。01、什么是链抽象及其作用链抽象能够将不同的区块链之间的差异整合在一个统一的操作界面中,使得用户只需一个账户即可

    每日资讯 2024-09-02 12:05 560
  • 今日日报|马斯克和特斯拉赢得“被指控操纵狗狗币”的诉讼;稳定币支付平台Bridge完成5800万美元融资
    今日日报|马斯克和特斯拉赢得“被指控操纵狗狗币”的诉讼;稳定币支付平台Bridge完成5800万美元融资

    今日要闻提示:马斯克和特斯拉赢得驳回指控他们操纵狗狗币的诉讼OpenAI和Anthropic已同意将其主要新AI模型在发布前共享给美国政府OKX将上线Hamster Kombat(HMSTR)现货交易X平台纽约总部将于9月13日关闭,预计将迁往得州萨尔瓦多总统布克尔成为《时代》杂志最新一期封面人物稳定币支付公司Bridge完成5800万美元融资数据:MATIC、SHIB、UNI代币头部地址持仓均超50%网龙今年上半年通过出售2.9亿元的加密货币,获利5100万元人民币监管消息美国众议院计划在9月举行多场加

    每日资讯 2024-09-02 12:05 1061