日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

以太坊Gas费用计算方式(“伦敦”升级前后改动全览)

發(fā)布時(shí)間:2024/3/26 编程问答 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 以太坊Gas费用计算方式(“伦敦”升级前后改动全览) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

以太坊Gas費(fèi)用計(jì)算方式(“倫敦”升級(jí)前后改動(dòng)全覽)

Gas是什么?

Gas 是指在以太坊網(wǎng)絡(luò)上執(zhí)行特定操作所需的計(jì)算工作量。

由于每筆以太坊交易都需要計(jì)算資源才能執(zhí)行,每筆交易都需要付費(fèi)。 在這個(gè)方面上,Gas 是指在以太坊成功進(jìn)行交易所需的費(fèi)用。

Gas費(fèi)用計(jì)算方式

以太坊的Gas計(jì)費(fèi)規(guī)則在2021年8月5日進(jìn)行了一次升級(jí),即London升級(jí),這次升級(jí)改變了以太坊的Gas計(jì)算方式,下面我們就詳細(xì)說一下,這次改變前后都有哪些改動(dòng)。

倫敦升級(jí)之前

假設(shè) Alice 需要支付 1 ETH 給 Bob。 在交易中,gas 限額為 21,000 單位,gas 的價(jià)格是 200 gwei。

總費(fèi)用為:Gas 單位(限額) * Gas 單價(jià) 例如 21,000 * 200 = 4,200,000 gwei 或者 0.0042 ETH

當(dāng) Alice 匯款時(shí),將從 Alice 賬戶中扣除 1.0042 ETH。 Bob 將獲得 1.0000 ETH。 礦工將得到 0.0042 ETH。

而上面說的是最基本的轉(zhuǎn)賬操作,而對(duì)于部署智能合約這樣的“交易”,Gas的計(jì)算就沒這么簡(jiǎn)單了,智能合約花費(fèi)的Gas費(fèi)用主要與其代碼與存儲(chǔ)位置有關(guān),即一個(gè)是計(jì)算資源,一個(gè)是存儲(chǔ)資源。

如果你想詳細(xì)的知道自己將要部署的智能合約要花費(fèi)多少Gas,那可以參考以太坊黃皮書中關(guān)于Gas費(fèi)用的內(nèi)容


可以看到,這樣的計(jì)算方式還是比較復(fù)雜的,自己去計(jì)算相當(dāng)不容易,所以現(xiàn)在一般都會(huì)用一些自動(dòng)計(jì)算工具,這些我把它放在了文章最后。

倫敦升級(jí)之后

倫敦升級(jí)于 2021 年 8 月 5 日 實(shí)施,目的是通過徹底改造以太坊的交易費(fèi)用機(jī)制,使用戶更容易預(yù)測(cè)以太坊的交易費(fèi)用。 這一升級(jí)帶來的更高一層的收益包括更好地估算交易費(fèi),通常會(huì)加快納入交易,并通過燃燒一定比例的交易費(fèi)來抵消 ETH 的發(fā)行。

從倫敦網(wǎng)絡(luò)升級(jí)開始,每個(gè)區(qū)塊都有基本費(fèi),由網(wǎng)絡(luò)根據(jù)區(qū)塊空間需求來計(jì)算每單位 gas 最低價(jià)格。 由于交易費(fèi)的基本費(fèi)會(huì)被燃燒掉,因此用戶還要在其交易中設(shè)定一個(gè)小費(fèi)(優(yōu)先費(fèi))。 小費(fèi)用于滿足礦工執(zhí)行和廣播包含用戶交易的區(qū)塊,預(yù)計(jì)將由大多數(shù)錢包自動(dòng)設(shè)置。

交易總費(fèi)用的計(jì)算用如下所示:Gas 單位 (限額) * (基本費(fèi)用 + 小費(fèi))

假設(shè) Jordan 需要向 Taylor 支付 1 ETH。 在交易中,礦工報(bào)酬限額為 21,000 單位,基本費(fèi)用的價(jià)格是 100 gwei。 Jordan 支付了 10 gwei 作為小費(fèi)。

使用上面的公式,我們可以計(jì)算 21,000 * (100 + 10) = 2,310,000 gwei 或 0.00231 ETH。

當(dāng) Jordan 轉(zhuǎn)賬時(shí),將從 Jordan 賬戶中扣除 1.00231 ETH。 Taylor 將獲得 1.0000 ETH。 礦工得到 0.00021 ETH。 0.0021 ETH 的基本費(fèi)用被燃燒。

此外,Jordan 還可以為交易設(shè)定最高費(fèi)用 (maxFeePergas)。 最高費(fèi)用與實(shí)際收費(fèi)之間的差額將歸還給 Jordan。如: 退款 = 最高費(fèi)用 - (基本費(fèi)用 + 優(yōu)先費(fèi))。 Jordan 可以為執(zhí)行交易費(fèi)用設(shè)定一個(gè)最高金額,而不必?fù)?dān)心在執(zhí)行交易時(shí)“超額”支付基本費(fèi)用。

區(qū)塊大小

在倫敦升級(jí)之前,以太坊有固定大小的區(qū)塊。 在網(wǎng)絡(luò)需求很高的時(shí)期,這些區(qū)塊滿負(fù)荷運(yùn)行。 因此,用戶常常不得不等待大量需求減少后才能被列入一個(gè)區(qū)塊,這導(dǎo)致用戶體驗(yàn)很差。

倫敦升級(jí)在以太坊中引入了大小可變區(qū)塊。 每個(gè)區(qū)塊的目標(biāo)大小為 1500 萬 gas,但區(qū)塊的大小將根據(jù)網(wǎng)絡(luò)需求增減。最多到 3000 萬 gas 的區(qū)塊限制(目標(biāo)區(qū)塊大小的 2 倍)。 該協(xié)議通過 tatonnement 的過程使區(qū)塊大小平均達(dá)到 1,500 萬。 這意味著如果區(qū)塊大小超出目標(biāo)區(qū)塊大小,協(xié)議將增加以下區(qū)塊的基本費(fèi)用。 同樣,如果區(qū)塊大小低于目標(biāo)區(qū)塊大小,協(xié)議將減少基本費(fèi)用。 基本費(fèi)用的調(diào)整金額與當(dāng)前區(qū)塊大小和目標(biāo)區(qū)塊大小的差距是成比例。

基本費(fèi)用

每個(gè)區(qū)塊都有作為儲(chǔ)備價(jià)格的基本費(fèi)用。 要想有資格被列入?yún)^(qū)塊,gas 費(fèi)用報(bào)價(jià)必須至少等于基本費(fèi)用。 基本費(fèi)用獨(dú)立于當(dāng)前區(qū)塊計(jì)算,是由區(qū)塊之前的區(qū)塊決定的,這使得用戶更容易預(yù)測(cè)交易費(fèi)用。 當(dāng)區(qū)塊被開采時(shí),此基本費(fèi)用將被“燃燒掉”,從循環(huán)中移除。

基本費(fèi)用的計(jì)算公式是將上一個(gè)區(qū)塊的大小(所有交易中使用的 gas 數(shù)量)與目標(biāo)大小進(jìn)行比較。 如果超過目標(biāo)區(qū)塊大小,區(qū)塊的基本費(fèi)用將最多增加 12.5%。 這種指數(shù)級(jí)增長(zhǎng)使得區(qū)塊大小無限期保持高位在經(jīng)濟(jì)上是不可行的。

區(qū)塊編號(hào)已包含 Gas費(fèi)用增加當(dāng)前基本費(fèi)用
115M0%100 gwei
230M0%100 gwei
330M12.5%112.5 gwei
430M12.5%126.6 gwei
530M12.5%142.4 gwei
630M12.5%160.2 gwei
730M12.5%180.2 gwei
830M12.5%202.7 gwei

相對(duì)于倫敦升級(jí)之前的 gas 拍賣市場(chǎng),這種交易費(fèi)機(jī)制的變化使費(fèi)用更容易預(yù)測(cè)。 根據(jù)以上表格,在 9 號(hào)區(qū)塊創(chuàng)建交易,錢包會(huì)讓用戶確切了解,要添加到下一個(gè)區(qū)塊的最大基本費(fèi)用是當(dāng)前基本費(fèi)用 * 112.5% 或 202.8 gwei * 112.5% = 228.1 gwei。

還請(qǐng)注意,由于處理完整塊的基本費(fèi)用增加的速度,我們不太可能看到完整塊的延長(zhǎng)峰值。

區(qū)塊編號(hào)已包含 Gas費(fèi)用增加當(dāng)前基本費(fèi)用
3030M12.5%2705.6 gwei
12.5%
5030M12.5%28531.3 gwei
12.5%
10030M12.5%10302608.6 gwei

優(yōu)先費(fèi)(小費(fèi))

在倫敦升級(jí)之前,礦工將獲得區(qū)塊中所含交易的總 gas 費(fèi)用。

隨著新的基本費(fèi)被燃燒,倫敦升級(jí)引入了優(yōu)先費(fèi) (小費(fèi)),以激勵(lì)礦工將交易納入?yún)^(qū)塊。 如果沒有小費(fèi),礦工會(huì)發(fā)現(xiàn)開采空區(qū)塊在經(jīng)濟(jì)上可行,因?yàn)樗麄儠?huì)獲得相同的區(qū)塊獎(jiǎng)勵(lì)。 在常規(guī)情況下,一筆金額不大的小費(fèi)給礦工提供了包含該交易的最低激勵(lì)。 對(duì)于需要在同一區(qū)塊中優(yōu)先執(zhí)行的交易,需要更高的小費(fèi)來試圖出價(jià)高于競(jìng)爭(zhēng)交易。

最高費(fèi)用

要在網(wǎng)絡(luò)上執(zhí)行交易,用戶可以為他們?cè)敢庵Ц兜慕灰讏?zhí)行費(fèi)指定最高限額。 此可選參數(shù)稱為 maxFeePergas。 為了執(zhí)行交易,最高費(fèi)用必須超過基本費(fèi)用和小費(fèi)的總和。 會(huì)為交易發(fā)送人退還最高費(fèi)用與基本費(fèi)用和小費(fèi)總和之間的差額。

計(jì)算費(fèi)用

倫敦升級(jí)帶來的主要好處之一是提高用戶在確定交易費(fèi)用時(shí)的體驗(yàn)。 對(duì)于支持升級(jí)的錢包,錢包提供商將自動(dòng)設(shè)置推薦的交易費(fèi)(基本費(fèi)用 + 推薦優(yōu)先費(fèi)),而不是明確說明您愿意支付多少費(fèi)用來完成交易,以便降低用戶的復(fù)雜程度。

EIP-1559

在倫敦升級(jí)中執(zhí)行 EIP-1559 使得交易費(fèi)機(jī)制比以前的 gas 競(jìng)價(jià)招標(biāo)更加復(fù)雜,但優(yōu)點(diǎn)是提高 gas 費(fèi)用的可預(yù)測(cè)性,從而使交易費(fèi)市場(chǎng)更加有效。 用戶可以在提交交易時(shí)設(shè)定 maxFeePergas,表示他們?cè)敢鉃閳?zhí)行交易支付多少費(fèi)用,同時(shí)清楚該數(shù)額不會(huì)超過 gas 的市場(chǎng)價(jià)格 (BaseFeePergas),并且獲得減去小費(fèi)后的剩余退款。

如果感興趣,您可以閱讀更確切的 EIP-1559 規(guī)范。

更深層次的見解請(qǐng)參見 EIP-1559 資源

什么是 GAS 限額?

Gas 限額是指您愿意在交易中消耗的最大 gas 數(shù)量。 涉及智能合約的更復(fù)雜交易需要更多的計(jì)算工作,因此相比較簡(jiǎn)單的支付,它們需要更高的 gas 限額。 標(biāo)準(zhǔn)的 ETH 轉(zhuǎn)賬一般要求 gas 的限額為 21,000 單位。

例如,如果您對(duì)簡(jiǎn)單的 ETH 轉(zhuǎn)賬設(shè)置 50,000 gas 限額。EVM 將消耗 21,000,您將收到剩余的 29,000。 然而,如果您設(shè)置的 gas 太少,比如說,對(duì)于簡(jiǎn)單的 ETH 轉(zhuǎn)賬,gas 限額為 20,000。EVM 將消耗您 20,000 gas 試圖實(shí)現(xiàn)交易,但不會(huì)完成。 然后,EVM 會(huì)恢復(fù)所有變化,但由于礦工已經(jīng)完成了價(jià)值 20k gas 的工作,所以 gas 被消耗掉了。

為什么 GAS 費(fèi)會(huì)變得如此高?

Gas 費(fèi)高是由于以太坊受歡迎。 在以太坊進(jìn)行任何操作都需要消耗 gas,每個(gè)區(qū)塊的 gas 空間有限。 這包括計(jì)算、儲(chǔ)存或操作數(shù)據(jù),或轉(zhuǎn)移代幣,每種消耗不同數(shù)量的“gas”單位。 隨著 dapp 功能變得更加復(fù)雜,智能合約執(zhí)行的操作數(shù)量也會(huì)增加。即每個(gè)交易在有限大小區(qū)塊內(nèi)占用更多空間。 如果需求太大,用戶必須提供更高的小費(fèi)來嘗試超越其他用戶的出價(jià)。 小費(fèi)更高即更有可能讓你的交易進(jìn)入下一區(qū)塊。

光靠 gas 價(jià)格并不能實(shí)際決定我們必須對(duì)特定交易支付的金額。 為了計(jì)算交易費(fèi),我們必須將交易費(fèi)所使用的 gas 乘以 gwei。

減少 GAS 成本的舉措

以太坊 2.0 的新網(wǎng)絡(luò)升級(jí)(也稱為 Eth2 或 Sereny)應(yīng)最終解決一些 gas 費(fèi)用問題,解決這些問題反過來又使平臺(tái)在全球范圍內(nèi)處理成千上萬次的交易。

第二層擴(kuò)容是一項(xiàng)主要舉措,可大大優(yōu)化 gas 成本、用戶體驗(yàn)和可擴(kuò)展性。

在信標(biāo)鏈上引入的新驗(yàn)證模式可以降低高耗電量,減少對(duì)專門硬件的依賴。 它將使去中心化的以太坊網(wǎng)絡(luò)能夠達(dá)成共識(shí)并保持網(wǎng)絡(luò)安全,同時(shí)通過代替要求財(cái)務(wù)承諾來限制能源消耗。

任何擁有至少 32 個(gè) ETH 的人都可以抵押這些 ETH,成為負(fù)責(zé)處理交易、驗(yàn)證區(qū)塊并提出要添加到鏈中的新區(qū)塊的驗(yàn)證者。 少于 32 個(gè) ETH 的用戶可以加入權(quán)益質(zhì)押池。

降低 GAS 成本的策略

如果您嘗試降低 ETH 的 gas 成本,則可以設(shè)置小費(fèi)來表明交易的優(yōu)先級(jí)別。 礦工會(huì)“繼續(xù)工作”并執(zhí)行每 gas 提供小費(fèi)更高的交易。因?yàn)樗麄兛梢员A裟Ц兜男≠M(fèi),而不會(huì)傾向于執(zhí)行小費(fèi)較低的交易。

如果想要監(jiān)控 gas 價(jià)格,用較少的費(fèi)用發(fā)送 ETH,您可以使用多種不同的工具,例如:

  • Etherscan 交易 gas 價(jià)格估算器
  • Blocknative ETH Gas Estimator 支持類型 0 傳統(tǒng)交易和類型 2 EIP-1559 交易的 gas 估算 Chrome 插件。
  • ETH Gas Station 以太坊 gas 市場(chǎng)面向消費(fèi)者的指標(biāo)

相關(guān)工具

  • Bloxy Gas Analytics 以太坊網(wǎng)絡(luò) gas 統(tǒng)計(jì)數(shù)據(jù)
  • Blocknative’s Gas Platform 由 Blocknative 的全局內(nèi)存池?cái)?shù)據(jù)平臺(tái)提供支持的 Gas 估算 API

總結(jié)

以上是生活随笔為你收集整理的以太坊Gas费用计算方式(“伦敦”升级前后改动全览)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。