🎉 #Gate Alpha 第三届积分狂欢节 & ES Launchpool# 聯合推廣任務上線!
本次活動總獎池:1,250 枚 ES
任務目標:推廣 Eclipse($ES)Launchpool 和 Alpha 第11期 $ES 專場
📄 詳情參考:
Launchpool 公告:https://www.gate.com/zh/announcements/article/46134
Alpha 第11期公告:https://www.gate.com/zh/announcements/article/46137
🧩【任務內容】
請圍繞 Launchpool 和 Alpha 第11期 活動進行內容創作,並曬出參與截圖。
📸【參與方式】
1️⃣ 帶上Tag #Gate Alpha 第三届积分狂欢节 & ES Launchpool# 發帖
2️⃣ 曬出以下任一截圖:
Launchpool 質押截圖(BTC / ETH / ES)
Alpha 交易頁面截圖(交易 ES)
3️⃣ 發布圖文內容,可參考以下方向(≥60字):
簡介 ES/Eclipse 項目亮點、代幣機制等基本信息
分享你對 ES 項目的觀點、前景判斷、挖礦體驗等
分析 Launchpool 挖礦 或 Alpha 積分玩法的策略和收益對比
🎁【獎勵說明】
評選內容質量最優的 10 位 Launchpool/Gate
MOVE語言首創GAS機制:鏈上資源計費方案全解析
MOVE語言首個GAS設計:鏈上GAS花費計算方法解析
MOVE語言的早期版本原本計劃在無GAS的環境下運行,因此並未爲GAS機制做好準備。近期,某公鏈團隊爲其區塊鏈設計了MOVE語言的首個GAS方案,這被稱爲一次"冒險"嘗試。
在這個GAS方案中,制定團隊闡述了設計原則、實施流程、GAS計算方法、後續調整機制,並表示歡迎社區提供建議。
GAS計量是許多區塊鏈的基本概念,它抽象地定義了執行和存儲鏈上交易所需的計算和存儲資源量。GAS方案確定了鏈上所有執行操作的成本,用於計算交易執行期間的GAS花費。
實施流程
爲了有效執行,該鏈上的流程包括:
設計原則
操作成本應與網路可用資源(如CPU、內存、網路、存儲I/O和空間使用等)直接相關。隨着技術和流程改進,GAS成本應相應降低。
GAS應由鏈上治理設置,並可無縫配置。
GAS可防止對網路固定資源的DoS攻擊,並可根據網路情況通過治理迅速調整。
GAS價格應反映加速增長和保持區塊鏈普及性的願景。
鼓勵在設計中做出優秀選擇,如優先考慮安全性、模塊化和斷言等。
GAS計算方法
用戶提交交易時需指定兩個數值:
交易執行過程中將收取:
最終交易費用 = 消耗的GAS總量 × GAS單價
例如,一筆交易消耗670個GAS單位,用戶指定的GAS單價爲100 Octa/單位,則最終費用爲670 × 100 = 67000 Octa = 0.00067原生代幣。
如果交易執行中耗盡GAS,發送方將按最大GAS量收費,且所有更改將被撤銷。
GAS方案詳解
GAS方案包含一些與單個操作無關的組成部分,如交易大小和最大GAS單位。
大多數交易規模在千字節級別。Move模塊發布可能達到幾千字節,而某框架約爲100KB。用戶模塊通常在4KB到40KB之間。初始交易規模設爲32KB,後根據社區反饋調整爲64KB,以簡化應用開發。
過大的交易會增加網路帶寬成本並可能影響性能。爲平衡規模和可訪問性,內存池可能會忽略過大的交易。
GAS方案中的最大GAS單位定義了單個交易可執行的最大操作數。這與用戶指定的最大GAS量不同。設置過高可能導致性能問題,如無限循環。目前,即使進行最大規模的框架升級,也僅使用了最大GAS單位(設爲1,000,000)的不到90%。
團隊使用基準框架和Valgrind分析工具評估執行成本,得出Move指令和原生函數的相對成本。通過考慮增強系統穩健性和安全性的編碼範例,確定了最終執行的機器指令數量。
存儲GAS計劃考慮了數據訪問的帶寬、IOPS容量以及永久存儲成本。訪問任何狀態項都涉及與驗證區塊鏈狀態相關的成本。存儲GAS費用計算公式爲:
存儲GAS費 = 項目費 + (字節費 × 字節數)
存儲相關成本基於每筆交易評估,即使多次讀/寫同一資源,也只收取一次費用。
社區參與
作爲社區項目,成員可以:
GAS成本調整
GAS方案作爲鏈上配置存儲,可通過治理提案更改。它被設計爲可擴展的,允許通過治理升級。隨着技術進步和用戶反饋,GAS參數可隨時間調整。
復雜的GAS公式更改可能需要更新節點軟件,並通過新的GAS特徵標志區分。這需要節點運營商廣泛採用新版本,並通過治理提案批準使用。
未來工作
作爲MOVE語言的首個GAS框架,該設計爲未來工作奠定了基礎:
降低執行成本:通過改進編譯器和虛擬機效率。
多維GAS計算:允許用戶爲執行和存儲指定單獨預算,實現更細粒度的最大GAS價格定義。
緩解狀態膨脹:探索每個項目TTL概念,在TTL到期時自動刪除未訪問的狀態項目,以鼓勵開發者清理鏈上數據。