今日运势评分

1

本月运势

戊寅月

震荡偏多

乙克己,巳火为用
甲不开仓财物耗散
辰不哭泣必主重丧

嫁娶,开光,求嗣,会亲友,安床,牧养,塑绘,针灸

入宅,移徙,出火,分居,安香,作灶,开市,交易,立券,安葬,动土,伐木

月相

上弦

冲顶回落

日冲

Powered by RitMEX

PEPE0.00 0.70%

SUI3.62 4.35%

TON3.88 0.78%

TRX0.23 1.63%

DOGE0.27 -1.51%

XRP2.54 -3.02%

SOL205.79 -1.88%

BNB574.09 -2.10%

ETH2797.25 0.78%

BTC98059.23 -1.25%

ETH Gas1.27 Gwei

贪婪
72

Paradigm 引入Flood:一种区块链节点负载测试的强大工具

在本文中,主要介绍了 Flood,一种负载测试工具,它为区块链节点的性能特征提供了前所未有的视图。

撰写:Storm Slivkoff, Georgios Konstantopoulos

编译:深潮 TechFlow

介绍

负载测试是构建开发弹性高、性能优秀数据系统的关键步骤。然而,负载测试在加密货币基础设施开发中并没有得到广泛应用。我们非常高兴地引入了 Flood,这是一款专门针对 RPC 端点性能分析的基准测试工具,以填补这一空白。

最初,我们将 Flood 作为一种工具来优化 Reth,并了解其在不同负载下的延迟和吞吐量权衡。后来,我们发现除了 Reth 之外,Flood 在优化许多类型的加密货币基础设施性能方面具有重要的实用价值。

让我们一起看看吧。

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

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

通过负载测试获得的信息可以用于许多方面。当系统正在开发时,负载测试可以突出显示哪些系统瓶颈需要优先改进。当比较两个系统时,负载测试可以揭示哪个系统更具性能或可靠性。作为其中一种特殊情况,负载测试可以比较单个系统的两个不同硬件或软件配置。在每种情况下,负载测试都可以实现高度优化的系统开发。

如何对区块链节点进行负载测试?

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

目前,衡量 RPC 性能最常见的方法不是负载测试,而是延迟测试:您向 RPC 节点发送一个请求,并测量获得响应所需的时间。各种 RPC 提供商的延迟测试可以在各个网站上找到。不幸的是,这种类型的测试对节点性能提供了有限的视图,因为它几乎没有揭示系统在负载下的行为。

在区块链中,工作负载可以通过两种重要方式变化。经典的变量是大小。每秒 10,000 个请求的负载对系统的压力比每秒 100 个请求的负载更大。另一个负载变量是 RPC 方法。对于从区块链节点中提取的每种类型的数据,都有不同的 RPC 方法。例如,块 vs 事务 vs 日志 vs 踪迹。每个 RPC 方法对系统施加不同类型的负载。一些 RPC 方法受存储 IO 限制,而其他方法受 CPU 限制。

什么是 Flood?

我们根据这些原则开发了一个负载测试工具,称为 Flood。与延迟测试不同,Flood 通过负载测试以及扩展测试覆盖范围到所有相关的 RPC 方法,为 RPC 端点的性能特征提供了前所未有的视图。

Flood 由三个基本组件组成:

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

  • 负载测试引擎:然后,Flood 编排 Vegeta(用 Go 编写的高性能负载测试工具)使用这些调用进行对 RPC 端点的负载测试。

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

每个组件都可以高度配置,使 Flood 能够涵盖广泛的测试场景和环境。

Flood 能做什么?

在 Flood 的常规操作过程中,用户指定要测试的 RPC 方法以及 RPC 端点列表。例如,您可能想测试 Reth 的两个版本的 eth_getLogs 的性能。Flood 将运行不同的控制负载来测试这些 RPC 端点。例如,它可能以每秒 1,000、2,000、4,000 和 8,000 个请求的速度运行 eth_getLogs。Flood 然后将显示表格和图表,总结性能指标如何随负载变化。输出看起来像这样:

在负载下性能指标降级的特定方式提供了丰富的见解,可揭示系统瓶颈和最终性能容量。

除此之外,Flood 还提供了高级功能,以适应各种类型的高级用户:

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

  • Flood 可以编排负载测试在每个 RPC 节点上原生模式运行,以消除由网络瓶颈引起的噪声。

  • Flood 具有“相等性”测试模式,可检查每个 RPC 端点是否返回相同的响应。

为什么要构建 Flood?

在 Paradigm,我们正在开发一种名为 Reth 的新节点实现,性能是其主要目标之一。我们开发了 Flood 来详细描述 Reth 的性能特征。我们已经使用 Flood 揭示了在各种工作负载和系统配置下出现的众多 Reth 性能瓶颈。然后,解决了这些瓶颈。通过 Flood,我们创建了一个紧密的反馈循环,使 Reth 开发人员可以高度可见地了解任何代码库更改如何转化为端到端系统性能。

除了 Reth 之外,我们认为 Flood 将能够帮助解决许多与 RPC 节点有关的未解答的问题:

  • 当运行节点时,哪些硬件规格最重要?存储 IO 相对于 RAM 速度、RAM 容量和 CPU 速度的重要性如何?RAID 值得吗?

  • 每个第三方 RPC 提供商的每个 RPC 方法的有效速率限制是多少?

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

结论

在本文中,主要介绍了 Flood,一种负载测试工具,它为区块链节点的性能特征提供了前所未有的视图。虽然最初构建 Flood 是为了优化 Reth 的开发,但我们认为它将成为其他类型的高性能加密货币基础设施开发的重要工具。我们期待看到其他人如何使用 Flood 来构建自己的高性能、可靠的系统。

欢迎加入深潮TechFlow官方社群

Telegram订阅群:https://t.me/TechFlowDaily
Twitter官方账号:https://x.com/TechFlowPost
Twitter英文账号:https://x.com/DeFlow_Intern
作者ParadigmParadigm
相关文章
2025.02.05 - 2 小时前
Berachain 主网上线在即,一览生态亮点与明星项目
本文从此前活动和未来主网生态角度切入分析,一览 Bera 的版图。
2025.02.05 - 3 小时前
快速理解 Berachain 白皮书:双代币与 PoL 机制到底好在哪?
可以放心,这条链的确有一只熊。
2025.02.05 - 9 小时前
Polymarket 之后,你应该关注这 10 个预测市场新项目
预测市场不再是“一刀切”的模式,未来的平台将更加专业化,针对特定领域进行优化。
2025.02.04 - 昨天
Story:将知识产权转化成为人工智能的货币
正如英伟达通过 GPU 加速推动 AI 变革一样,Story 将成为 AI 价值链中不可或缺的一环。
2025.02.01 - 4 天前
RedStone 成为首个在 EigenLayer 再质押平台上部署 AVS 的技术领先预言机
这不仅是 RedStone 的重大飞跃,也是整个去中心化金融未来发展的重要一步。
2025.01.31 - 5 天前
马斯克效应:Musk It 是否会成为下一个爆发的 MEME 币?
对于寻求下一款具备病毒式传播潜力、由社区驱动的加密货币的投资者而言,Musk It 提供了一个独特的机会。
2025.01.30 - 6 天前
速览 jellyjelly:速通1.8 亿市值,主打视频聊天分享的新兴 SocialFi 应用
$JellyJelly 的核心功能是捕捉视频聊天中的精彩瞬间,并将其快速转化为可分享的内容。
2025.02.02 - 3 天前
MuskIt 团队推出 Musk Tower:阿联酋即将崛起的全球创新与加密中心
我们不仅仅是在建造一座塔楼,我们是在建造未来。
2025.01.28 - 8 天前
速览 Venice 和 $VVV:集成 DeepSeek,24 小时登录 Coinbase 的 BASE 链新贵(附空投领取方式)
Venice AI 是一个以隐私保护、去中心化和无审查为核心的人工智能平台。
2025.01.27 - 9 天前
Movemaker:Aptos 基金会数百万美元驱动华语区生态建设,官方社区组织正式成立
Movemaker致力于成为Aptos在华语区生态发展的关键驱动引擎,通过多方协作与持续创新,充分挖掘Aptos技术在华语市场的潜力。