gpt4 book ai didi

javascript - 如何计算 RSK 上每笔交易的平均 gas 成本?

转载 作者:行者123 更新时间:2023-12-05 00:25:37 25 4
gpt4 key购买 nike

我想计算为 RSK 上的所有交易支付的平均汽油费最近三个月内。我尝试使用 Web3.js 查询 RSK 区 block 链图书馆。要获取单个区 block 高度的交易数据,我必须这样做:

const txsPerBlock = await web3.getBlockTransactionCount(block.height);
const txs = await Promise.all(
[...Array(txsPerBlock).keys()].map(
(i) => web3.eth.getTransactionFromBlock(block.height, i))
);
然后计算平均gas费用:
const averageGasFee = txs.reduce(
(p, c) => p + Number(c.gasPrice) * c.gas,
0
) / txs.length;
然而,在 3 个月内,RSK 上大约有 230,000 个区 block ,其中每个区 block 大约有 3 笔交易。因此,我不得不对大约 600,000 笔交易进行轮询,这些交易需要很长时间才能完成。我等了一个小时,然后取消了脚本。
有没有更好的方法来查询 RSK 区 block 链并计算如此大量区 block 和交易的平均交易 Gas 费?

最佳答案

您可以使用 getBlock()方法(docs),如果您通过 true,则能够立即返回 block 中的所有事务作为第二个参数( returnTransactionObjects )。

const block = await web3.eth.getBlock(blockNumber, true);
const averageGasFee = block.transactions.reduce(
(p, c) => p + Number(c.gasPrice) * c.gas,
0
) / block.transactions.length;
这导致“仅”230k 请求而不是之前的 600k。

关于javascript - 如何计算 RSK 上每笔交易的平均 gas 成本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71437556/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com