網(wǎng)站制作NEWS
Web3系列教程之入門篇---2:什么是Gas
理解以太坊網(wǎng)絡的核心要素之一就是“Gas”。Gas就像是汽車所需的汽油,為以太坊提供運行所需的能量。在交易時,用戶需要支付一筆交易費用,也就是所謂的Gas費用。
當以太坊網(wǎng)絡進行升級,如2021年8月的倫敦升級時,交易費用的計算方式和Gas的運作方式也有所變化。因此,本教程將分為兩個部分,前部分易于理解,后部分提供升級的動力。
在倫敦升級前,交易費用的計算是基于簡單的公式:Gas費用 = Gas使用的數(shù)量 × Gas價格。Gas價格以gwei為單位,1Gwei等于0.000000001ETH。
例如,如果Alice想向Bob支付1ETH,交易的Gas成本為21,000Gas,假設Gas價格為200Gwei,那么Gas費用為4,200,000Gwei,即0.0042ETH。這筆費用會被礦工從包含Alice交易的區(qū)塊中獲得。
用戶可以使用錢包如Metamask,根據(jù)當前網(wǎng)絡條件為要執(zhí)行的交易提供合理的Gas價格估算。
在執(zhí)行交易時,每個智能合約被編譯成字節(jié)碼,然后在以太坊虛擬機上運行。這個過程涉及到一系列操作,稱為OPCODES。每個OPCODE都有固定的Gas成本。這些成本相加,構成了智能合約執(zhí)行所需的總Gas費用。
為了確保每個區(qū)塊的計算成本不超過允許范圍,以太坊網(wǎng)絡對單個區(qū)塊中的最大Gas量施加了限制。這確保了節(jié)點不會由于計算復雜性的增加而與網(wǎng)絡的其他部分脫節(jié)。
在倫敦升級后,每個區(qū)塊都會設置基本Gas費用,這是包含交易的每單位Gas的最低價格。這個價格由網(wǎng)絡根據(jù)對塊空間的需求本地計算,這些基本費用將被銷毀,以減少ETH的供應量并達到平衡。此外,引入了小費的概念,用于補償?shù)V工執(zhí)行和傳播用戶交易。錢包會自動設置小費,但用戶可以選擇手動設置。
升級后的Gas費用計算公式為:Gas費用 = Gas使用的數(shù)量 × (基本費用 + 小費)。
在倫敦升級之前,所有區(qū)塊的區(qū)塊Gas限制是恒定的,為15MGas。然而,倫敦升級引入了可變塊大小,每個區(qū)塊有一個15MGas的目標Gas限制,但大小可以根據(jù)網(wǎng)絡需求增加或減少,最高可達30MGas。平均而言,網(wǎng)絡通過修改區(qū)塊大小和基本費用達到了1500萬左右的平衡。
以太坊的目標是成為一個高度安全和去中心化的區(qū)塊鏈網(wǎng)絡,執(zhí)行智能合約。然而,高昂的Gas費用是一個熱門話題。因此,正在進行多項工作來降低Gas費用和改善用戶體驗,包括以太坊2.0升級和第2層擴展。
最后,推薦使用以下資源獲取更多關于Gas的詳細信息:[1] GitHub上的EVM操作碼列表[2] 有關Gas的YouTube視頻[3] 倫敦升級的官方文檔[4] 智能合約中的Gas優(yōu)化[5] 更多關于第2層擴展的信息。
多重隨機標簽