# MOVE語言首個GAS設計:鏈上GAS費用計算方法MOVE語言的早期版本原本打算在無GAS環境下運行,因此沒有爲GAS計劃做好準備。近期,一個區塊鏈項目爲其MOVE語言實現設計了首個GAS計劃,這被稱爲"一場冒險"。該GAS計劃闡明了制定GAS的原則、流程、計算方法、後期調整以及接受社區建議的態度。GAS計量是許多區塊鏈的基本概念,它定義了執行和存儲鏈上交易所需的計算和存儲資源量的抽象計算。GAS計劃確定鏈上所有執行的成本,用於計算交易執行期間的GAS花費。### 流程爲了有效執行,該鏈上的流程是:1. 定義原則2. 準備評估框架,確定每個執行的價格3. 爲Move建立GAS計量系統和安全GAS代數4. 導入上遊GAS框架5. 使GAS框架具有存儲意識6. 進一步細化GAS計劃### 原則定義的原則包括:1. 操作成本與網路可用資源直接相關,技術改進後GAS成本應降低2. GAS由鏈上治理設置,可無縫配置3. GAS可防止DoS攻擊,可根據網路情況快速調整4. GAS價格反映了加速增長和保持區塊鏈可及性的願望5. 鼓勵在設計中做出好的選擇,如優先考慮安全性、模塊化等### 計算GAS用戶提交交易時須指定兩個數量:- 最大GAS量:用戶願意爲執行交易花費的最大GAS單位數- GAS單價:以每單位GAS的八進制計算,1八進制=0.00000001原生代幣交易執行過程中將收取:1. 固定成本2. 執行成本3. 讀取成本4. 寫入成本最終交易費用 = 消耗的GAS總量 × GAS單價### 建立GAS計劃表1. 基本配置:包括交易大小和最大GAS單位2. 交易規模:最初設爲32KB,後調整爲64KB3. 最大GAS單位:設定爲1,000,000,影響交易可執行時長4. 執行:通過基準框架和分析工具評估執行成本5. 存儲:考慮存儲設備帶寬、IOPS容量和永久磁盤佔用成本存儲GAS費 = 項目費 + (字節費 × 字節數)### 讀、創建和寫- 讀操作:最常見,根據磁盤IOPS和帶寬容量校準- 創建操作:成本最高,根據參考磁盤空間校準- 寫操作:更新現有項,字節費用與創建相同### 穩定的GAS單位成本固定的GAS單位成本有助於保持GAS計劃不變,與原生代幣市場價值脫鉤。GAS單位以約3位數精度表示。### 社區參與社區成員可以:1. 指出GAS計劃不合理之處2. 參與社區討論3. 對相關治理提案投票### GAS成本調整GAS計劃可通過治理提案更改。有時需要更新節點軟件並採用新的GAS特徵標志。### 未來工作1. 降低執行成本2. 實現多維GAS計算3. 緩解臃腫狀態問題該項目正在探索每個項目TTL的概念,在TTL到期時刪除未訪問的狀態項目。
MOVE語言首創GAS設計:鏈上資源計價與費用計算全解析
MOVE語言首個GAS設計:鏈上GAS費用計算方法
MOVE語言的早期版本原本打算在無GAS環境下運行,因此沒有爲GAS計劃做好準備。近期,一個區塊鏈項目爲其MOVE語言實現設計了首個GAS計劃,這被稱爲"一場冒險"。
該GAS計劃闡明了制定GAS的原則、流程、計算方法、後期調整以及接受社區建議的態度。
GAS計量是許多區塊鏈的基本概念,它定義了執行和存儲鏈上交易所需的計算和存儲資源量的抽象計算。GAS計劃確定鏈上所有執行的成本,用於計算交易執行期間的GAS花費。
流程
爲了有效執行,該鏈上的流程是:
原則
定義的原則包括:
計算GAS
用戶提交交易時須指定兩個數量:
交易執行過程中將收取:
最終交易費用 = 消耗的GAS總量 × GAS單價
建立GAS計劃表
基本配置:包括交易大小和最大GAS單位
交易規模:最初設爲32KB,後調整爲64KB
最大GAS單位:設定爲1,000,000,影響交易可執行時長
執行:通過基準框架和分析工具評估執行成本
存儲:考慮存儲設備帶寬、IOPS容量和永久磁盤佔用成本
存儲GAS費 = 項目費 + (字節費 × 字節數)
讀、創建和寫
穩定的GAS單位成本
固定的GAS單位成本有助於保持GAS計劃不變,與原生代幣市場價值脫鉤。GAS單位以約3位數精度表示。
社區參與
社區成員可以:
GAS成本調整
GAS計劃可通過治理提案更改。有時需要更新節點軟件並採用新的GAS特徵標志。
未來工作
該項目正在探索每個項目TTL的概念,在TTL到期時刪除未訪問的狀態項目。