使用 txping 实时测量以太坊交易延迟

本文介绍了一个名为txping的轻量级Node.js工具,用于简化以太坊交易延迟的测量。该工具通过QuickNode RPC端点发送签名后的0 ETH交易,并报告RPC延迟(交易提交到哈希确认的时间)和区块包含延迟(交易提交到首次确认的时间)。通过重复此过程,可以建立以太坊主网上交易传播性能的基线,并根据网络拥塞和Gas定价动态来优化费用和提高应用性能。

概述

当微调交易机器人、基准测试客户端或调查缓慢的交易传播时,获取准确的延迟指标至关重要。

txping 是一个轻量级的 Node.js 实用程序,可以简化此过程。它通过你的 QuickNode RPC 端点发送一个签名的 0 ETH 交易,并报告:

  • RPC 延迟 — 衡量为交易提交和哈希确认之间的时间。
  • 区块包含延迟 — 衡量为交易提交和首次确认之间的时间。

通过重复此过程,你可以建立以太坊主网上交易传播性能的基线。


你将做什么

在本指南中,你将:

  • 在本地配置和运行 txping

  • 生成专用的测试钱包并为其提供资金。

  • 对你的以太坊 RPC 端点进行基准测试并记录延迟指标。

  • 调整交易费用以优化实际条件下的结果。

    • *

你需要的

要求 版本 / 说明
Node.js ≥ 20.x
NPM ≥ 10.x
QuickNode RPC URL 以太坊主网端点
资金 少量 ETH(~0.01)
熟悉度 基本 CLI 和 以太坊概念

为什么延迟很重要

交易延迟是各种以太坊用例的关键指标:

  • 交易机器人和套利 需要近乎即时的交易传播,才能利用价格变动。
  • NFT 铸造 通常要求交易在几秒钟内确认,以确保获得有限的投放。
  • 面向用户的 dApp 依赖于快速的交易最终性来维持流畅的用户体验。
  • DeFi 协议 需要及时结算,以最大限度地减少滑点并最大化收益。

实际上,交易延迟因网络拥塞gas 定价动态而异。当以太坊网络繁忙时,gas 费用不足的交易可能会在内存池中等待很长时间才能确认。

通过在不同的 gas 和网络条件下对你的端点进行基准测试,你可以主动优化费用并提高应用程序性能。


项目设置

  1. 克隆存储库:
git clone https://github.com/lvandeyar/txping.git
cd txping
npm install
  1. 创建一个新的测试钱包:
node create-wallet.js

保存打印的地址和私钥。

  1. 创建一个 .env 文件并配置以下环境变量:
QUICKNODE_RPC_URL=https://your-endpoint.quiknode.pro/...
PRIVATE_KEY=0xYOUR_PRIVATE_KEY
WALLET_ADDRESS=0xYOUR_ADDRESS
  1. 在以太坊主网上用少量 ETH 为钱包提供资金。

运行基准测试

运行脚本以发送和测量交易时间:

npm start

你将看到类似于以下的输出:

➤ RPC latency: 94 ms
➤ Inclusion time: 12.6 s
➤ Included in block: 20456789

重复多次测试以建立平均和百分位延迟。


实施细节

核心逻辑很简单:

const rpcStart = Date.now();
const txResponse = await provider.sendTransaction(signedTx);
const rpcLatency = Date.now() - rpcStart;

const inclusionStart = Date.now();
const receipt = await txResponse.wait();
const inclusionTime = (Date.now() - inclusionStart) / 1000;

console.log(`➤ RPC latency: ${rpcLatency} ms`);
console.log(`➤ Inclusion time: ${inclusionTime.toFixed(1)} s`);

这种结构允许你将该实用程序集成到你现有的工作流程或 CI/CD 管道中。


Gas 定价注意事项

txping 使用具有合理默认值的 EIP-1559 风格的交易:

  • Gas 限制:21 000
  • 每个 gas 的优先级费用:1 gwei

你可以根据需要调整这些参数。在拥塞期间,增加优先级费用可以改善包含时间。


安全性和最佳实践

  • 不要将此钱包用于测试以外的任何用途。

  • 不要提交包含你的私钥的 .env 文件。

  • 考虑将你的测试隔离到专用的 QuickNode 项目中,以进行日志记录和指标衡量。

    • *

下一步

此版本的 txping 适用于以太坊主网。

如果你想在其他 EVM 链(例如 Polygon、BNB Chain、Avalanche C-Chain)上使用此实用程序,请联系 QuickNode 团队,以帮助调整此实用程序以适应其他网络或请求增强功能。


总结

通过最少的设置和少于 100 行的代码,txping 允许你对以太坊主网的 RPC 延迟和交易包含时间进行基准测试。

通过为你的设置生成基线,你可以主动监控你的交易性能、识别瓶颈并确保你的应用程序满足其目标服务级别目标。

如果你有任何问题或需要有关 Solana 开发项目的帮助,请加入我们的 QuickNode Discord 或在 Twitter 上关注我们。

我们 ❤️ 反馈!

如果你有任何反馈或新主题的要求,请 告诉我们。 我们很乐意听取你的意见。

  • 原文链接: quicknode.com/guides/eth...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
QuickNode
QuickNode
江湖只有他的大名,没有他的介绍。