Gas
為什麼交易費用是由gas price和gas limit定義的,而不僅僅是一個成本限制?
我知道有氣體限制,這樣我們就不會在出現問題時失去所有的 ETH。天然氣價格用於定義 1 天然氣的成本。但是費用總是gas price * gas limit,那麼為什麼乙太坊區塊鏈不簡單地要求一個費用成本限制呢?
例如,我可以設置:
Gas 限制為 10^6,gas 價格限制為 10^9 Wei。
Gas 限制為 10^9,gas 價格限制為 10^6 Wei。
Gas 限制為 10^10,Gas 價格限制為 10^5 Wei。
這一切都以相同的交易費用結束:10^15 Wei。所以當我們將 ETH 交易發送到區塊鏈時,而不是
txData = { nonce: 20, gasPrice: 1000000000, gasLimit: 1000000, to: '0x8f2b163fd3a871ce', value: 10^18, data: '0x' };
為什麼它不是這樣建造的:
txData = { nonce: 20, feeLimit: 10^15, to: '0x8f2b163fd3a871ce', value: 10^18, data: '0x' };
最後,為每一行程式碼支付 1 個 gas,這意味著 1 的 gas 限制和 10^15 的 gas 價格將不起作用。在這種情況下,區塊鏈通過將費用限制(10^15)除以行數來自動計算費用,這樣使用者就不必在gas價格和gas限制上賭博了?
考慮將乙太幣存入某個交易所。它總是花費你 21 000 GAS。但是 GAS 價格總是不同的,有時您支付 1 GWei,有時您支付 10 GWei。例如幾天前我支付了 2 GWei,我在 5 分鐘內確認了交易,今天是 9.1 GWei - https://ethgasstation.info/
考慮到這一點 - 如果不區分 gas 價格和 gas 限制,在乙太坊上開發去中心化應用程序將非常困難。因為gas limit不會改變,所以gas價格一直在變化。