近期随着以太坊的币价拉升,DeFi热潮的延续,以太坊的交易又再次突破新高,但是过多的交易量再次导致了以太坊的拥堵,以太坊的矿工费也达到了历史新高,之前转账几分钱的时代已经远去,随之而来的是动辄上百元的交易费用。 很明显,高昂的矿工费使你忍不住点进来,妄图通过学习科普来节省矿工费。不过以现阶段来看,省钱是不存在的,这篇文章顶多能让你花钱花的更明白点 以太坊矿工费是怎么计算的? 提到矿工费,很多人会脱口而出,就是Gas呗!目前的确是有很多人将Gas和矿工费直接画等号来使用的。但严格意义来说,这种定义是不准确的。 在以太坊区块链中,Gas是衡量计算量的特殊单位,它用来测量一个操作或一组操作需要执行多少工作量。比如,计算一个 Keccak256 加密哈希函数,每次计算哈希时需要 30 个 Gas。 因此Gas不是币,不是钱,不是费用,所以和矿工费并不是一个东西。 那Gas和矿工费有什么关系呢?看下面这一条公式: 矿工费= Gas Price * Gas Used 翻译过来就是 : 矿工费=Gas 价格*Gas 用量 下面我们就来拆开讲一下公式里的一些概念。 Gas Price 指你愿意为单位Gas支付多少以太坊,这是最吸引矿工的数字,也是决定你的交易完成快慢的决定性因素,因为矿工为了获得更多的矿工费,总是会优先为出价更高的交易服务。 所以在转账前一定要设置合理的 Gas Price,过低会长时间得不到处理,或者被移除交易,导致转账失败。 Gas Used 是指你的这次操作消耗了多少Gas,但在日常转账时,我们通常见不到Gas Used在哪里设置,这是因为只有在转账完成后,我们才能看到这笔交易具体使用了多少Gas。 我们在转帐前可以设置的叫做Gas Limit,即Gas 限额,意思是你愿意为这笔操作最多使用多少Gas,Gas Limit 和 Gas Used的特别像你点外卖,你预计自己可以吃多少和你实际吃多少的关系。 设置完Gas Limit进行转账后,会有以下几种情况: 1、Gas Limit = Gas Used,即预设的 Gas 和用掉的 Gas 完全一致。 2、Gas Limit > Gas Used,即预设的Gas没有完全消耗完。 3、Gas Limit < Gas Used,即预设的Gas不够实际使用的。 第一种,交易成功。 第二种,交易成功。还有个好消息是,没有消耗完的Gas会以ETH的形式返回,并不会造成损失。 第三种,交易失败。还有个坏消息是,已经消耗的Gas不会退回,损失惨重。 所以简单总结一下: Gas Price决定你的交易走多快(多快被矿工打包), Gas Limit 决定你的交易可以走多远(可以运行多么复杂的合约)。 怎样合理设置Gas Price和Gas Limit? 如果你是一个普通用户,那么你不需要考虑这些问题。譬如imtoken,比特派这样的钱包,在转账时会根据当前网络状态帮你自动计算推荐矿工费,为你设置当前最合理的Gas Price 和 Gas Limit。 如果你是一个不甘心做普通用户的普通用户,那我就带你一起琢磨一下 首先设置的矿工费= 设置Gas Price * 设置Gas Limit 虽然把Gas Price 和 Gas Limit 任意一个数值降低你的矿工费的值都会降低,但是最好不要随意降低 Gas Limit 。正确降低矿工费的方法应该是调低 Gas Price。 因为降低 Gas Limit不仅不会给你省钱,还会徒增你交易失败的概率,同时你也知道,交易失败后的矿工费是不会退还的,所以千万不要随意降低 Gas Limit,这是很不明智的一种行为。 为什么交易在区块链上会失败,提示Out Of Gas? Out Of Gas 就是指上面的第三种情况,Gas Limit < Gas Used,即预设的Gas不够实际使用的,这种情况在按钱包或者交易所推荐的预设Gas费下基本上都不会发生,如果发生,通常只会发生在以下几种情况之下: 1、以太坊线上交易量太多,太拥堵,你的交易可能是因Gas Price设置得太低而被遗忘所以被迫交易失败 2、在去中心化交易所的交易池内交易时,池内筹码比例变化得太快,你的交易自发出那一刻就已经是不成立了,所以会交易失败 3、智能合约不够健全,项目方太应付,没有提前预设返回Gas Limit 值,导致我们的钱包设置了错误的Gas Limit数据 解决办法: 1、在以太坊拥堵时候,要想交易成功迅速,就是要设置高额一点的Gas Price 2、在筹码比例变化快的池子内交易,你的交易速度,也就是你交易时选择交易数额已经输入密码的手速要快一些,这样还能大致跟得上流动性池子内的变化 3.如果是项目智能合约不健全,首先要考虑的是这个项目还值不值得去参加,最基础的交易Gas Limit 值都不能提前反馈,技术与审查实在是不到位;如果接受项目,要想交易成功,那你就要设置尽可能高的Gas Limit 值,多试几次,这由于是项目技术本身的不到位,所以并没有什么更好地办法 设置Gas Limit是不是越高越好? 前面说当Gas Limit > Gas Used 时,即预设的Gas没有完全消耗完,多设置的的部分Gas还会返还给我们。 所以很多人就会想,那我设置尽可能高的Gas Limit岂不是万无一失了?反正用不完的会还我。实际上过高的Gas Limit并不会提高你的交易速度。反而会给你带来风险。 因为以太坊每个区块可以处理的交易也是有限的,因此矿工需要在有限的交易数中获得更高的收益,而过高的Gas Limit在矿工眼中属于画大饼的行为,他们并不喜欢这种泡沫,会宁愿去选择数据更实在单价更高的交易,从而去实打实地填满一个区块,并且部分的挖矿策略中还会后置处理Gas Limit过高的交易。 而且,Gas Limit的存在可以有效的防止一些合约死循环漏洞去恶意消费你的矿工费,如果你设置了过高的Gas Limit,恰巧又碰到了有问题的合约,那么你Gas将会一直消耗下去,直到设置的Gas Limit将会被消耗光,这将是得不偿失的。 结语 现阶段高额的Gas费用将会是以太坊交易中一直存在的大问题;怎样去合理地设置Gas费,将会帮助我们去进行更精确的交易费用支出;但我们相信在以太坊2.0到来之后,以太坊能真正履行区块链去中心化交易的速率与低手续费,从而真正达到交易的性价比。 —- 编译者/作者:链推者___Ethan 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
以太坊拥堵我们该如何设置Gas费才最合理?
2020-12-22 链推者___Ethan 来源:区块链网络
LOADING...
相关阅读:
- 利息优化协议安全审计报告2020-03-022020-12-22
- 慕岩说币:12/22比特币以太坊日内操作策略供参考2020-12-22
- 最近很火爆上热搜的IPFS它到底香不香?2020-12-22
- 12.22ETH午间获利:2020-12-22
- 币圈资深大佬为什么总是对以太坊存在好感?...2020-12-22