MOVE dili için ilk GAS tasarımı: on-chain GAS harcama hesaplama yönteminin analizi
MOVE dilinin erken sürümü GAS mekanizmasını göz önünde bulundurmadığı için, belirli bir blockchain projesi için tasarlanan GAS planına "bir macera" denmektedir. Bu plan, GAS oluşturma prensiplerini, süreçlerini, hesaplama yöntemlerini ve sonraki ayarlamaları açıklamakta olup, topluluğun önerilerini beklemektedir.
GAS ölçümü, birçok blok zincirinin temel kavramıdır ve zincir üzerindeki işlemlerin yürütülmesi ve depolanması için gereken hesaplama ve depolama kaynaklarını ölçmek için kullanılır. GAS planı, zincir üzerindeki tüm yürütmelerin maliyetini belirler ve işlem yürütme süresince GAS harcamasını hesaplamak için kullanılır.
süreci
Bu blok zinciri projesinin GAS uygulama süreci şunları içerir:
Tanım İlkeleri
Değerlendirme çerçevesini hazırlayın, her bir uygulamanın fiyatını belirleyin
MOVE için bir GAS ölçüm sistemi ve güvenli GAS cebiri oluşturmak
Yukarıdaki GAS çerçevesini içe aktar
GAS çerçevesinin depolama bilincine sahip olması
GAS planını daha da ayrıntılandırma
ilke
Proje tanımının ilkeleri şunlardır:
İşlem maliyetleri, ağda mevcut kaynaklarla doğrudan ilişkili olmalı ve teknolojik ilerlemelerle azalmalıdır.
GAS, on-chain yönetişim ile ayarlanmış olup, kesintisiz bir şekilde yapılandırılabilir.
GAS, DoS saldırılarını önleyebilir ve ağ durumuna göre hızlı bir şekilde ayarlanabilir.
GAS fiyatı, hızlanan büyüme ve blockchain'in yaygınlığını koruma vizyonunu yansıtır.
Güvenlik, modülerlik gibi avantajlar sağlayacak seçimler yapmaya teşvik edin.
GAS hesapla
Kullanıcı işlem gönderdiğinde belirtmesi gereken:
Maksimum GAS miktarı: İşlem gerçekleştirmek için harcamaya razı olduğunuz maksimum GAS birimi sayısı
GAS birim fiyatı: Sekizli sayı sistemi ile hesaplanır, 1 sekizli = 0.00000001 yerel token
İşlem gerçekleştirme sürecinde alınan:
Sabit maliyet
İcra Maliyeti
Okuma Maliyeti
Yazma maliyeti
Son işlem ücreti = Tüketilen GAS toplamı × GAS birim fiyatı
Örneğin, bir işlem 670 GAS birimi tüketiyorsa, kullanıcı GAS birim fiyatını 100 Octa/birim olarak belirlemişse, nihai ücret 670 × 100 = 67000 Octa = 0.00067 yerel token olur.
Eğer işlem sırasında GAS tükenirse, gönderen maksimum GAS miktarına göre ücretlendirilir ve işlemde yapılan tüm değişiklikler geri alınır.
GAS plan tablosu oluşturma
1. Temel Konfigürasyon
GAS planı, işlem boyutu ve maksimum GAS birimi gibi tek bir işlemle ilgisi olmayan bileşenleri içerir.
2. İşlem Ölçeği
Çoğu işlem ölçeği kilobayt seviyesindedir, ancak MOVE modülü birkaç kilobayta kadar yayınlanabilir. Başlangıçta işlem ölçeği 32KB olarak ayarlandı, daha sonra topluluk geri bildirimine göre 64KB olarak ayarlandı.
Büyük ölçekli işlemler ağ bant genişliği maliyetini artıracak ve performansı etkileyebilir. Bellek havuzu daha büyük ölçekli işlemleri göz ardı etme eğiliminde olacaktır, bu nedenle maksimum ölçek ile erişilebilirlik arasında bir denge sağlanmalıdır.
3. Maksimum GAS birimi
GAS planındaki maksimum GAS birimi, işlemin gerçekleştirebileceği maksimum işlem sayısını tanımlar. Çok yüksek ayarlanması, sonsuz döngü gibi olumsuz performans etkilerine neden olabilir. Testler sonucunda, maksimum çerçeve yükseltmesi gerçekleştirildiğinde bile, belirlenen maksimum GAS birimi (1,000,000)'in %90'ından azdır.
4. Uygulama
Ekip, bir referans çerçevesi oluşturdu ve uygulama maliyetlerini değerlendirmek için analiz araçları kullandı, tüm MOVE komutları ve yerel işlevlerin göreceli maliyetlerini kabaca tahmin etti. Sonuçta, sistemin dayanıklılığını ve güvenliğini artıran kodlama örneklerini dikkate alarak, nihai yürütme için gereken makine talimatlarının sayısını belirledi.
5. Depolama
Defter durumu öğelerine veya verilere erişirken, düğüm depolama cihazına okuma/yazma isteği gönderir. Veri erişim sayısı, depolama cihazının bant genişliği ve IOPS kapasitesi ile sınırlıdır. Ekip, bu maliyetleri göz önünde bulundurarak depolama GAS planını tasarlamıştır.
Durum öğelerine erişim ve depolama, tüm blok zinciri durumunu doğrulamakla ilgili veri yapılarıyla ilişkili maliyetler doğurur. Ücret hesaplama formülü şudur:
GAS ücreti = Proje ücreti + ( byte ücreti × byte sayısı )
oku, oluştur ve yaz
Durum öğesi erişimi, okuma, oluşturma ve yazma olmak üzere üç türde ayrılır:
Okuma işlemi en yaygın olanıdır, yalnızca anlık kaynak kıtlığı ile sınırlıdır.
Oluşturma işlemi, durum depolama alanına yeni öğeler ekler, maliyet en yüksek
Yazma işlemi mevcut öğeleri günceller, ek kimlik doğrulama veri yapısı maliyeti oluşturmaz.
Depolama ile ilgili maliyetler, her işlem için değerlendirilir, aynı kaynağın birden fazla okuma/yazma işlemi için yalnızca bir kez ücret alınır.
Ekip, GAS toplam ücretini oluşturan 6 GAS parametresini tanımladı:
per_item_read: IOP'lara göre kalibre
per_byte_read: Bant genişliğine göre kalibre
per_item_create:Hedef toplam projeye göre kalibrasyon
per_byte_create: Hedef toplam boyuta göre ayarlama
per_item_write: per_item_read ile aynıdır
per_byte_write: per_byte_create ile aynıdır
stabil GAS birim maliyeti
Her işlem ve işlem kendisi, depolama ve yürütme maliyetlerine göre sabit bir birim maliyeti gerektirir. Sabit GAS birim maliyeti, GAS planını sabit tutmaya yardımcı olur ve yerel token piyasa değerinden bağımsız hale getirir.
Takım, GAS birimini yaklaşık 3 haneli hassasiyetle ifade etmektedir, örneğin, transfer işlem maliyeti yaklaşık 700 GAS birimidir.
Topluluk Katılımı
Topluluk üyeleri şunları yapabilir:
GAS planındaki mantıksız noktaları bul.
GAS planına ilişkin endişeleri ifade etme ve tartışmaya katılma
GAS ile ilgili yönetişim önerilerine oy verme
GAS maliyetini nasıl ayarlayabilirim?
GAS planı, on-chain yapılandırma depolama olarak yönetim önerileri ile değiştirilebilir ve yeni talimatlar veya işlevler sorunsuz bir şekilde eklenebilir.
GAS planı, yönetim önerileri aracılığıyla yükseltmelere izin verecek şekilde ölçeklenebilir olarak tasarlanmıştır. Proje geliştikçe ve kullanıcı geri bildirimleri dikkate alındıkça, GAS parametreleri kademeli olarak ayarlanabilir.
Karmaşık GAS formüllerinin değiştirilmesi, düğüm yazılımının güncellenmesini gerektirir; büyük ölçekli benimsemenin ardından yeni sürümün kullanılabilmesi için yönetim önerisi ile onaylanması gerekir.
Gelecek İş
MOVE'un ilk uygulanabilir GAS çerçevesi olarak, bu proje gelecekteki çalışmalar için bir temel oluşturuyor:
İcra maliyetlerini düşürmek: Derleyici ve sanal makine verimliliğini artırmak
Çok boyutlu GAS hesaplaması: Kullanıcılara yürütme ve depolama için ayrı bütçe belirleme izni verir.
Şişkinlik durumunu hafifletmek: Her projenin TTL konseptini keşfetmek, TTL süresi dolduğunda ziyaret edilmemiş durum projelerini silmek.
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
MOVE dilinin ilk GAS tasarımına kavuşması: on-chain kaynak ücretlendirme planının tam analizi
MOVE dili için ilk GAS tasarımı: on-chain GAS harcama hesaplama yönteminin analizi
MOVE dilinin erken sürümü GAS mekanizmasını göz önünde bulundurmadığı için, belirli bir blockchain projesi için tasarlanan GAS planına "bir macera" denmektedir. Bu plan, GAS oluşturma prensiplerini, süreçlerini, hesaplama yöntemlerini ve sonraki ayarlamaları açıklamakta olup, topluluğun önerilerini beklemektedir.
GAS ölçümü, birçok blok zincirinin temel kavramıdır ve zincir üzerindeki işlemlerin yürütülmesi ve depolanması için gereken hesaplama ve depolama kaynaklarını ölçmek için kullanılır. GAS planı, zincir üzerindeki tüm yürütmelerin maliyetini belirler ve işlem yürütme süresince GAS harcamasını hesaplamak için kullanılır.
süreci
Bu blok zinciri projesinin GAS uygulama süreci şunları içerir:
ilke
Proje tanımının ilkeleri şunlardır:
GAS hesapla
Kullanıcı işlem gönderdiğinde belirtmesi gereken:
İşlem gerçekleştirme sürecinde alınan:
Son işlem ücreti = Tüketilen GAS toplamı × GAS birim fiyatı
Örneğin, bir işlem 670 GAS birimi tüketiyorsa, kullanıcı GAS birim fiyatını 100 Octa/birim olarak belirlemişse, nihai ücret 670 × 100 = 67000 Octa = 0.00067 yerel token olur.
Eğer işlem sırasında GAS tükenirse, gönderen maksimum GAS miktarına göre ücretlendirilir ve işlemde yapılan tüm değişiklikler geri alınır.
GAS plan tablosu oluşturma
1. Temel Konfigürasyon
GAS planı, işlem boyutu ve maksimum GAS birimi gibi tek bir işlemle ilgisi olmayan bileşenleri içerir.
2. İşlem Ölçeği
Çoğu işlem ölçeği kilobayt seviyesindedir, ancak MOVE modülü birkaç kilobayta kadar yayınlanabilir. Başlangıçta işlem ölçeği 32KB olarak ayarlandı, daha sonra topluluk geri bildirimine göre 64KB olarak ayarlandı.
Büyük ölçekli işlemler ağ bant genişliği maliyetini artıracak ve performansı etkileyebilir. Bellek havuzu daha büyük ölçekli işlemleri göz ardı etme eğiliminde olacaktır, bu nedenle maksimum ölçek ile erişilebilirlik arasında bir denge sağlanmalıdır.
3. Maksimum GAS birimi
GAS planındaki maksimum GAS birimi, işlemin gerçekleştirebileceği maksimum işlem sayısını tanımlar. Çok yüksek ayarlanması, sonsuz döngü gibi olumsuz performans etkilerine neden olabilir. Testler sonucunda, maksimum çerçeve yükseltmesi gerçekleştirildiğinde bile, belirlenen maksimum GAS birimi (1,000,000)'in %90'ından azdır.
4. Uygulama
Ekip, bir referans çerçevesi oluşturdu ve uygulama maliyetlerini değerlendirmek için analiz araçları kullandı, tüm MOVE komutları ve yerel işlevlerin göreceli maliyetlerini kabaca tahmin etti. Sonuçta, sistemin dayanıklılığını ve güvenliğini artıran kodlama örneklerini dikkate alarak, nihai yürütme için gereken makine talimatlarının sayısını belirledi.
5. Depolama
Defter durumu öğelerine veya verilere erişirken, düğüm depolama cihazına okuma/yazma isteği gönderir. Veri erişim sayısı, depolama cihazının bant genişliği ve IOPS kapasitesi ile sınırlıdır. Ekip, bu maliyetleri göz önünde bulundurarak depolama GAS planını tasarlamıştır.
Durum öğelerine erişim ve depolama, tüm blok zinciri durumunu doğrulamakla ilgili veri yapılarıyla ilişkili maliyetler doğurur. Ücret hesaplama formülü şudur:
GAS ücreti = Proje ücreti + ( byte ücreti × byte sayısı )
oku, oluştur ve yaz
Durum öğesi erişimi, okuma, oluşturma ve yazma olmak üzere üç türde ayrılır:
Depolama ile ilgili maliyetler, her işlem için değerlendirilir, aynı kaynağın birden fazla okuma/yazma işlemi için yalnızca bir kez ücret alınır.
Ekip, GAS toplam ücretini oluşturan 6 GAS parametresini tanımladı:
stabil GAS birim maliyeti
Her işlem ve işlem kendisi, depolama ve yürütme maliyetlerine göre sabit bir birim maliyeti gerektirir. Sabit GAS birim maliyeti, GAS planını sabit tutmaya yardımcı olur ve yerel token piyasa değerinden bağımsız hale getirir.
Takım, GAS birimini yaklaşık 3 haneli hassasiyetle ifade etmektedir, örneğin, transfer işlem maliyeti yaklaşık 700 GAS birimidir.
Topluluk Katılımı
Topluluk üyeleri şunları yapabilir:
GAS maliyetini nasıl ayarlayabilirim?
GAS planı, on-chain yapılandırma depolama olarak yönetim önerileri ile değiştirilebilir ve yeni talimatlar veya işlevler sorunsuz bir şekilde eklenebilir.
GAS planı, yönetim önerileri aracılığıyla yükseltmelere izin verecek şekilde ölçeklenebilir olarak tasarlanmıştır. Proje geliştikçe ve kullanıcı geri bildirimleri dikkate alındıkça, GAS parametreleri kademeli olarak ayarlanabilir.
Karmaşık GAS formüllerinin değiştirilmesi, düğüm yazılımının güncellenmesini gerektirir; büyük ölçekli benimsemenin ardından yeni sürümün kullanılabilmesi için yönetim önerisi ile onaylanması gerekir.
Gelecek İş
MOVE'un ilk uygulanabilir GAS çerçevesi olarak, bu proje gelecekteki çalışmalar için bir temel oluşturuyor: