以太坊交易相关笔记
查看ETH拥堵状况
通过Ethereum Pending Transactions Queue可以查看当前以太坊网络中pending状态的交易量,也就是等待打包的交易量。等待打包的交易量越多,说明以太坊网络越拥堵。
如何计算交易费用
简单来说,在以太坊中的转账交易费用计算方式为:
TX fee = gas price * gas limit
什么是Gas
Gas的中文意思是气体,瓦斯等,此处我们可以理解为一种计量单位,比如说运算次数。一笔交易(Transaction)其实就是N次的运算次数的结果。不同的交易行为,复杂程度不同,需要运算次数也不同,即需要不同数目的Gas,比如转账1个ETH和1个EOS所需的Gas是不同的。
什么是Gas Price
Gas Price就是你愿意为1Gas所付的钱,计量单位为GWei
,1Gwei
= 10^-9Eth
,也就是1Gwei
= 0.000000001Eth
,因此,当你设定Gas Price为21GWei
时,也就是说你愿意为每次“运算”付0.0000000021Eth
作为矿工费。
什么是Gas Limit
任何一笔交易在开始之前会设定所需的Gas(即运算次数)上限,称之为Gas Limit。如下图,转账一个EOS所需的Gas是40779。
这个Gas Limit的值只是一个大致估算,如果实际交易时候,交易尚未完成,Gas就已经消耗完了,那么这次交易将会被取消,但是已经消耗的Gas即手续费是不会退还了,用来奖励给矿工。如果交易已经完成,消耗的Gas量低于所设置的Gas Limit,多余的Gas会被退回,实际所消耗的Gas即手续费称之为Gas Used。那么回到一开始的问题,如何计算交易费用的公式应该修改为:
TX free = Gas Used * Gas Price(Gas Used <= Gas Limit )
如何在拥堵时候尽快转账?
在以太坊中转账需要消耗交易费用,如果交易费用越高,矿工就会选择优先处理,那么如何设置最合理的高转账费用呢?
通过Gas Price Oracle可以查看在过去的一个小时内手续费的统计结果,分为四个级别,Save Low , Normal , Fast 和 Fastest。
可以看出来21GWei的Price处在Normal级别,如果你急着想让交易完成的话,可以尝试提高你的Gas Price至Fast甚至Fastest级别,而提高Gas Limit则没有太大用途。