Gas

為什麼交易費用是由gas price和gas limit定義的,而不僅僅是一個成本限制?

  • April 16, 2020

我知道有氣體限制,這樣我們就不會在出現問題時失去所有的 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價格一直在變化。

引用自:https://ethereum.stackexchange.com/questions/82539