以太坊中交易及區塊的大小限制
02-02
本文在 區塊鏈技術中文社區 同步發表。非原創,是對 stackexchange上某大牛的回答 的翻譯,感謝原作者的無私奉獻
進入正題
- 交易的大小限制並不是一個固定數,截至到16.2.7號限制大概是 780KB(大約300w gas)
- 交易和區塊的大小都沒有固定的限制,它可以自動伸縮,但是這並不是意味著完全沒有限制,當前單個區塊最多的gas使用量為3,141,592 gas,理論上來講,你可以創建一個可以消耗單個區塊所有gas的,很大的單筆交易
來個栗子,發送一個合約附帶256kb的隨機數據:
上述交易大概需要耗費900w gas, 這個測試目前是通不過的。Mist會嘗試創建這個交易,但它是無效的。
再來一個接近於最大gas使用量限制的栗子,44,444 byte的隨機數據
這個交易通過了,可以戳這裡查看這筆交易I0207 11:47:14.558908 eth/api.go:946] Tx(0x25e54394ab4e5f17d6e1240c02c1a6c4bb675ef9471f1105b006988f5fe5aec1) to: 0xfcae7970392f510a985a7eaccd3820b7759d65d9n
- Value: 60 Finney (0.06 Ether)
- Gas: 3131800
- Gas Price: 50 Gwei (0.00000005 Ether)
- Gas Used By Transaction: 3031800
- Actual Transaction Cost: 151.59 Finney (0.15159 Ether)
- Cumulative Gas Used: 3031800上述交易向以太坊區塊鏈網路第967163個區塊里添加了44kb數據
重點來了,在第967164 區塊,網路對前一個區塊的高消費(gas)作出了反應,把單個區塊gas的最大使用量提高到3,142,967!
附上上述第二個栗子消耗gas的計算公式, 附加數據裡面有178個0位元組,所以gas = 21,000 + (178 * 4) + (44,266 * 68) = 3,031,800
推薦閱讀:
※以太坊分叉鬧劇,以太霧 ETF or 以太修 EMO?
※如何評價火幣、okex、cion ex等平台推出代幣的行為?
※ETC價格突破20美元,市值已超越辣條
TAG:以太坊 |