一个人的长颈6星评价
2020-08-25 23:30:17
以太坊在区块链上实现了一个运行环境,被称为以太坊虚拟机(EVM)。每个参与到网络的节点都会运行EVM作为区块验证协议的一部分。他们会验证区块中涵盖的每个交易并在EVM中运行交易所触发的代码。每个网络中的全节点都会进行相同的计算并储存相同的值。合约执行会在所有节点中被多次重复,这个事实得使得合约执行的消耗变得昂贵,所以这也促使大家将能在链下进行的运算都不放到区块链上进行。对于每个被执行的命令都会有一个特定的消耗,用单位Gas计数。
Gas是以太坊世界的燃料,它决定了以太坊网络生态系统的正常运行,用于交易、执行智能合约、支付数据存储费用等各个方面。
每个合约可以利用的命令都会有一个相应的Gas值。Gas值的存在避免智能合约进入死循环,你不能编写永不结束的程序,因为你用尽了Gas,计算将被节点拒绝。
Gas同时也是矿工的佣金,并以ETH⽀付。在以太坊中,由交易发起者付出的Gas最终会以ETH货币的价值计算并付给矿工作为手续费,也就是:Gas cost= Gas Used*Gas Price。
在现实中,所有的交易最终都是由矿工选择的,但是用户所选择支付的交易费用多少会影响到该交易被打包所需等待的时长。如果该交易由于计算,包括原始消息和一些触发的其他消息,需要使用的Gas数量小于或等于所设置的Gas limit,那么这个交易会被处理。如果Gas总消耗超过Gas limit,那么所有的操作都会被复原,但交易是成立的并且交易费任会被矿工收取。区块链会显示这笔交易完成尝试,但因为没有提供足够的Gas导致所有的合约命令都被复原。所以交易里没有被使用的超量Gas都会以以太币的形式打回给交易发起者。因为Gas消耗一般只是一个大致估算,所以许多用户会超额支付Gas来保证他们的交易会被接受。
中国龙5星评价
2020-08-21 23:31:38
以太坊Gas是测量以太坊网络中运行交易或智能合约的计算工作的单位。
该系统类似于使用千瓦(kW)来测量房屋内的电力;您使用的电力不是以美元和美分计量,而是以每小时千瓦时或千瓦计。
Gas用来衡量执行某些动作需要多少“工作量”,这些“工作量”就是为了执行该动作支付给网络的费用额。
通俗理解,Gas是给矿工的佣金,以ETH 支付,无论是交易、执行智能合约并启动 DApps,还是支付数据存储费用,都需要用到 Gas。