Desain GAS inovatif dari bahasa MOVE: Analisis skema perhitungan konsumsi sumber daya on-chain

robot
Pembuatan abstrak sedang berlangsung

Desain GAS pertama MOVE: Bagaimana cara menghitung konsumsi GAS on-chain

Baru-baru ini, sebuah proyek blockchain mengumumkan rencana GAS-nya. Sebagai desain GAS pertama dari bahasa MOVE, ini dianggap sebagai upaya inovatif. Tim proyek menjelaskan secara rinci prinsip, proses, metode perhitungan, dan rencana penyesuaian di masa depan untuk menetapkan GAS, serta menyatakan bahwa mereka menyambut saran dari komunitas.

Pengukuran GAS adalah konsep dasar di banyak blockchain, yang digunakan untuk mengukur sumber daya komputasi dan penyimpanan yang diperlukan untuk mengeksekusi dan menyimpan transaksi on-chain. Rencana GAS menentukan biaya untuk semua eksekusi on-chain, yang digunakan untuk menghitung konsumsi GAS selama eksekusi transaksi.

proses desain

Proses desain GAS proyek ini mencakup langkah-langkah berikut:

  1. Menentukan Prinsip Desain
  2. Siapkan kerangka evaluasi, tentukan harga untuk setiap eksekusi.
  3. Membangun sistem pengukuran GAS dan aljabar GAS yang aman untuk MOVE
  4. Mengimpor kerangka GAS hulu ke dalam proyek
  5. Membuat kerangka GAS memiliki kesadaran penyimpanan
  6. Memperinci lebih lanjut rencana GAS

Prinsip Desain

Tim proyek telah menetapkan prinsip desain berikut:

  1. Biaya operasi harus terkait langsung dengan sumber daya yang tersedia di jaringan dan akan menurun seiring dengan perbaikan teknologi.
  2. GAS harus diatur oleh on-chain governance, dapat dikonfigurasi dengan fleksibel
  3. GAS dapat mencegah serangan DoS, dan dapat disesuaikan dengan cepat
  4. Harga GAS mencerminkan visi proyek untuk mendorong pertumbuhan dan penyebaran blockchain.
  5. Mendorong untuk membuat pilihan yang menguntungkan dalam desain, seperti memprioritaskan keamanan, modularitas, dan lain-lain.

metode perhitungan GAS

Pengguna harus menentukan dua jumlah saat mengajukan transaksi:

  • Jumlah GAS maksimum: Jumlah unit GAS maksimum yang bersedia dibayar pengguna
  • Harga GAS: harga per unit GAS, dihitung dalam oktal (1 oktal = 0.00000001 token)

Biaya berikut akan dikenakan selama proses eksekusi transaksi:

  1. Biaya tetap
  2. Biaya eksekusi (mengeksekusi instruksi MOVE)
  3. Biaya pembacaan (mengambil data dari penyimpanan)
  4. Biaya penulisan (menyimpan data ke penyimpanan)

Biaya transaksi akhir = Total GAS yang digunakan × Harga per GAS

Misalnya, jika transaksi menghabiskan 670 unit GAS, dan harga GAS yang ditentukan oleh pengguna adalah 100 Octa/unit, maka biaya akhir adalah 670 × 100 = 67000 Octa = 0.00067 token.

Jika eksekusi transaksi menghabiskan GAS, pengirim akan dikenakan biaya sesuai dengan jumlah GAS maksimum, perubahan yang dilakukan oleh bursa akan dibatalkan.

GAS rencana tabel konstruksi

  1. Konfigurasi dasar: mencakup ukuran transaksi dan unit GAS maksimum serta komponen lain yang tidak terkait dengan operasi tunggal

  2. Skala transaksi: Awalnya ditetapkan sebesar 32KB, kemudian disesuaikan menjadi 64KB berdasarkan umpan balik komunitas.

  3. Unit GAS maksimum: mendefinisikan jumlah maksimum operasi yang dapat dilakukan dalam satu transaksi, ditetapkan sebesar 1.000.000

  4. Biaya eksekusi: Menilai biaya relatif dari instruksi MOVE dan fungsi asli melalui kerangka acuan dan alat analisis.

  5. Biaya penyimpanan: Pertimbangkan bandwidth perangkat penyimpanan, kapasitas IOPS, dan biaya penggunaan disk permanen.

Biaya penyimpanan GAS = Biaya proyek + ( biaya per byte × jumlah byte )

operasi baca, buat, dan tulis

  • Membaca: operasi yang paling umum, dengan biaya terendah
  • Buat: Tambahkan item baru ke dalam penyimpanan status, biaya maksimum
  • Menulis: Memperbarui item yang ada, biaya byte sama dengan membuat

Setiap transaksi, bahkan jika membaca/menulis sumber yang sama beberapa kali, hanya dikenakan biaya sekali.

biaya unit GAS yang stabil

Biaya unit GAS yang tetap membantu menjaga stabilitas rencana GAS, terlepas dari nilai pasar token. Tim proyek menyatakan unit GAS dengan presisi sekitar 3 digit, seperti biaya transaksi transfer sekitar 700 unit GAS.

partisipasi komunitas

Proyek mendorong anggota komunitas:

  1. Menunjukkan ketidakwajaran dalam rencana GAS
  2. Ikuti diskusi komunitas, ungkapkan pandangan tentang rencana GAS
  3. Melakukan pemungutan suara terkait proposal tata kelola GAS

penyesuaian biaya GAS

Rencana GAS sebagai penyimpanan konfigurasi on-chain dapat diubah melalui proposal tata kelola. Pembaruan rumus GAS yang kompleks memerlukan pembaruan perangkat lunak node dan mendapatkan adopsi yang luas, akhirnya disetujui melalui proposal tata kelola.

Arah Pekerjaan Masa Depan

  1. Mengurangi biaya eksekusi: dengan meningkatkan compiler dan mesin virtual
  2. Perhitungan GAS Multidimensi: memungkinkan pengguna untuk menetapkan anggaran terpisah untuk eksekusi dan penyimpanan.
  3. Mengurangi kekakuan status: Menjelajahi konsep TTL setiap proyek, menghapus item status yang tidak diakses saat TTL kedaluwarsa.

Sebagai desain GAS pertama untuk bahasa Move, proyek ini meletakkan dasar untuk pekerjaan di masa depan, dan berharap melalui perbaikan berkelanjutan dan partisipasi komunitas, dapat lebih mengoptimalkan mekanisme GAS blockchain.

MOVE0.8%
GAS2.08%
Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
  • Hadiah
  • 4
  • Bagikan
Komentar
0/400
MetaMuskRatvip
· 07-19 08:44
Ini gas akan play people for suckers lagi, kan?
Lihat AsliBalas0
DegenWhisperervip
· 07-18 17:00
move benar-benar mahal
Lihat AsliBalas0
RumbleValidatorvip
· 07-16 20:07
Pengoptimalan batas efisiensi verifikasi pertama, penyimpanan optimasi data yang sangat unggul.
Lihat AsliBalas0
PrivateKeyParanoiavip
· 07-16 20:03
Apa gas ini terlalu konyol?
Lihat AsliBalas0
  • Sematkan
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)