我们先来看下以太坊的区块大小变化情况(如下图)。3月19日,以太坊区块的平均大小为21345Bytes,约为0.02M(平均出块时间为15秒)。
可见,以太坊的区块大小是不固定的,背后的原因,在于它采用了完全不同于比特币的做法。
比特币的转帐交易是统一格式,可以用固定的区块大小来规范。以太坊则不同,V神(以太坊的创立者)将区块链视为世界计算机,在比特币基础上,以太坊实现了智能合约,这就意味着,除了和比特币有同样的转帐功能外,以太坊网络中更多的是要为大量程序提供运算服务。
以太坊网络中不同的事务,所需要的计算成本各不相同。
举个例子,对于转帐交易类事务,以太坊网络的处理是相对一致的;而对于一个有Bug的程序来说,很可能会消耗掉大量的算力(比如程序中存在无限循环运算时)。以太坊明确了每笔操作会有个最低算力消耗值,而智能合约的算力消耗量则在最低消耗值基础上,还需要加上所有代码执行的算力。实际消耗的算力只有在实际使用时才能确认。
因此,以太坊中每笔交易的大小是不确定的。如果需要用一个相对固定的参数来规范以太坊区块的话,最直观的就是固定每个区块中所包含的算力了。这个值由矿工在每个区块中的GAS LIMIT(单位:gas)参数来表示,每个交易提交时也会有算力需求(单位:gas),乘以算力gas的价格(单位:gwei/gas),就是交易成本了(单位:gwei,gwei和eth类似于比特币里的 聪 和BTC的关系:每 eth = 10^9 gwei)。
目前gas price和每个区块里的GAS LIMIT数值如下图:
▲ 数据来源:https://ethstats.net
提交每笔交易时,需要附加愿意付出的最多成本,矿工在打包时,会遵循以下规则:
因此,在面对突来的交易激增时,以太坊表现出了较好的灵活性,比如在2017年6月29日,因1C0原因,交易量激增,以太坊在不到2个小时内,就实现了33%的增长。
下图是以太坊网络每个区块中包含算力的变化情况,从最早的3百多万,到目前基本稳定在8百万gas中。在能提供的算力增长时,如有足够的交易能消耗完,自然矿工会得到更多收益,但也需要矿工付出更多成本——更大的宽带、更快的计算能力,所以这个过程虽然不需要多方争议,但也受限于物理性能,客观上不会一蹴而就。
总结:
以太坊通过在每个区块中包括相对稳定的算力而非区块容量的大小,实现了对区块的规范化管理;并用逐块的算力调整机制(调整正负0.0976% ),以应对交易处理量变化情况。
以太坊已经完成了君士坦丁堡升级,你还会继续看好以太坊吗?为什么?欢迎在留言区留言。
——End——
『声明:本系列内容仅供区块链科普入门学习,不构成任何投资意见或建议。如有任何错漏,敬请留言指出。』
出品|白话区块链(ID:hellobtc)
声明:本内容为作者独立观点,不代表 CoinVoice 立场,且不构成投资建议,请谨慎对待,如需报道或加入交流群,请联系微信:VOICE-V。
简介:区块链从入门到精通,看我就够了
评论0条