Остання версія мови MOVE спочатку планувалася для роботи в середовищі без GAS, тому не була підготовлена для механізму GAS. Нещодавно один блокчейн-проект вперше розробив план GAS для мови MOVE, що вважається інноваційною спробою. Команда проекту оприлюднила принципи, процеси, методи обчислення та плани коригування GAS, а також заявила про готовність приймати пропозиції від спільноти.
Облік GAS є основним поняттям багатьох блокчейнів, що використовується для кількісного визначення обчислювальних і сховищних ресурсів, необхідних для виконання та зберігання транзакцій в мережі. План GAS визначає вартість всіх виконань в мережі, що використовується для обчислення споживання GAS під час виконання транзакції.
Процес проектування
Для забезпечення ефективного виконання проект реалізував такі процеси:
Визначення принципів
Підготовка оцінювальної рамки, визначення цін на виконання різних завдань
Створити систему обліку GAS для MOVE та безпечну GAS алгебру
Імпортуйте фреймворк GAS з верхнього потоку в проект
Надати GAS-фрейму можливість сприйняття зберігання
Подальше вдосконалення плану GAS
Принципи дизайну
Принципи, які дотримується цей проект, включають:
Витрати на операції повинні бути безпосередньо пов'язані з доступними ресурсами мережі і зменшуватися з розвитком технологій.
GAS має бути встановлений через управління в мережі, може бути гнучко налаштований
GAS повинен запобігати DoS-атакам на фіксовані ресурси мережі, може швидко налаштовуватися в залежності від стану мережі.
Ціна GAS повинна відображати бачення проекту щодо сприяння зростанню та популяризації блокчейну
Заохочення до прийняття відмінних рішень у дизайні, таких як акцент на безпеці, модульності тощо.
Метод обчислення GAS
Користувач повинен вказати два значення під час подання транзакції:
Максимальна кількість GAS: максимальна кількість одиниць GAS, яку користувач готовий заплатити за виконання транзакції.
Ціна GAS: обчислюється в восьмиричній системі, 1 восьмиричний = 0.00000001 рідного токена
Під час виконання угоди буде стягнуто:
Фіксовані витрати: базові витрати плюс великі комісії за транзакції
Витрати на виконання: використовується для виконання MOVE команди
Витрати на читання: використовується для читання даних з постійного сховища
Витрати на запис: використовується для запису даних у довгострокове сховище
Кінцевий торговий збір = Загальна кількість витраченого GAS × Ціна GAS
Якщо під час виконання транзакції вичерпається GAS, відправник буде стягуватися за максимальну кількість GAS, зміни, внесені біржею, будуть скасовані.
Побудова плану GAS
Базова конфігурація
План GAS містить кілька компонентів, які не пов'язані з конкретними операціями, таких як розмір транзакції та максимальна одиниця GAS.
обсяг торгівлі
Більшість розмірів транзакцій на рівні КБ, але випуск MOVE модуля може досягати кількох тисяч байт. Проектна структура приблизно 100 КБ, більшість користувацьких модулів в межах 4-40 КБ. Спочатку розмір транзакції був встановлений на 32 КБ, а потім був скоригований до 64 КБ на основі відгуків спільноти.
Занадто великі транзакції можуть збільшити витрати на пропускну здатність мережі та вплинути на продуктивність. Щоб збалансувати масштаб і доступність, пул пам'яті може ігнорувати занадто великі транзакції.
найбільша одиниця GAS
Максимальна одиниця GAS, визначена в плані GAS, визначає максимальну кількість операцій, які можуть бути виконані в одній транзакції. Занадто високе налаштування може призвести до проблем з продуктивністю, таких як нескінченні цикли. Навіть при максимальному оновленні фрейму використовується менше ніж 90% від максимальної одиниці GAS (, встановленої на 1,000,000 ).
оцінка витрат на виконання
Оцінка витрат на виконання через базову структуру та аналітичні інструменти, оцінка відносних витрат команди MOVE та рідних функцій. Після врахування стабільності та безпеки системи, визначається остаточна кількість машинних інструкцій для виконання та визначається поточне значення в плані GAS, зважуючи на зберігання та максимальні одиниці GAS.
вартість зберігання
Доступ до сховища обмежений пропускною спроможністю пристроїв та IOPS. План зберігання GAS враховує миттєву дефіцитність та постійні витрати на зайнятість. Доступ до будь-якого елемента стану створює витрати, пов'язані з перевіркою всього стану блокчейну.
Зберігання GAS-кошту = проектний кошт + ( байт-кошту × кількість байтів )
Читання, створення та запис
Читання: найпоширеніша операція, калібрування на основі дискових IOPS та пропускної спроможності
Створення: найвищі витрати, калібрування на основі орієнтовного дискового простору
Запис: оновлення існуючого елемента, плата за байти така ж, як і при створенні
Кожна транзакція стягує плату за читання/запис одного і того ж ресурсу лише один раз.
стабільна вартість одиниці GAS
Фіксована вартість одиниці GAS допомагає підтримувати стабільність GAS-плану, не піддаючись впливу ринкової вартості нативних токенів. Точність приблизно до 3-х цифр, вартість звичайної трансакції становить близько 700 одиниць GAS.
Участь у спільноті
Проект заохочує членів спільноти:
Виявлення недоліків у плані GAS
Участь у обговореннях спільноти, висловлення занепокоєння щодо плану GAS
Голосування за пропозиції щодо управління GAS
Коригування вартості GAS
План GAS використовується для зберігання конфігурацій в ланцюзі і може бути змінений через пропозиції з управління. Дизайн має масштабованість, що дозволяє оновлення через пропозиції. Складні зміни потребують оновлення програмного забезпечення вузлів і широкого впровадження, а в кінці нова версія повинна бути затверджена через пропозиції з управління.
Майбутні напрямки роботи
Як перша життєздатна GAS-рамка MOVE, цей дизайн закладає основу для майбутньої роботи:
Зниження витрат на виконання: оптимізація компілятора та віртуальної машини
Багатовимірні обчислення GAS: дозволяє користувачам визначати окремий бюджет для виконання та зберігання
Пом'якшення розширення стану: дослідити впровадження концепції TTL для елементів стану, автоматично видаляючи застарілі невідвідувані елементи.
Цей GAS відкриває нові можливості для екосистеми мови MOVE, в майбутньому є великий потенціал для розвитку та вдосконалення.
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
21 лайків
Нагородити
21
9
Поділіться
Прокоментувати
0/400
WalletAnxietyPatient
· 07-05 03:04
Це коли стягуватимуть газовий збір? Я весь у поту.
Переглянути оригіналвідповісти на0
OnChain_Detective
· 07-05 02:42
виявлено червоний прапор - реалізація газу потребує ретельного аудиту безпеки якнайшвидше
Переглянути оригіналвідповісти на0
SingleForYears
· 07-04 01:44
А все ж ETH кращий, дідусь не грає в нові речі.
Переглянути оригіналвідповісти на0
ILCollector
· 07-04 00:51
move газ також закінчився?
Переглянути оригіналвідповісти на0
FUD_Whisperer
· 07-02 03:34
move можна вважати, що вийшло на поверхню, га!
Переглянути оригіналвідповісти на0
0xLostKey
· 07-02 03:34
Сидіти і чекати, поки втрачати газ.
Переглянути оригіналвідповісти на0
HappyToBeDumped
· 07-02 03:34
Знову розганяють концепцію. Без газу не краще?
Переглянути оригіналвідповісти на0
HalfIsEmpty
· 07-02 03:24
Брате, твій газ нарешті запущений!
Переглянути оригіналвідповісти на0
EthMaximalist
· 07-02 03:08
move також почне споживати газ?! блин, як же нудно
Перше впровадження механізму GAS у MOVE: повний аналіз принципів дизайну та методів обчислення
Обговорення першого дизайну GAS для MOVE мови
Остання версія мови MOVE спочатку планувалася для роботи в середовищі без GAS, тому не була підготовлена для механізму GAS. Нещодавно один блокчейн-проект вперше розробив план GAS для мови MOVE, що вважається інноваційною спробою. Команда проекту оприлюднила принципи, процеси, методи обчислення та плани коригування GAS, а також заявила про готовність приймати пропозиції від спільноти.
Облік GAS є основним поняттям багатьох блокчейнів, що використовується для кількісного визначення обчислювальних і сховищних ресурсів, необхідних для виконання та зберігання транзакцій в мережі. План GAS визначає вартість всіх виконань в мережі, що використовується для обчислення споживання GAS під час виконання транзакції.
Процес проектування
Для забезпечення ефективного виконання проект реалізував такі процеси:
Принципи дизайну
Принципи, які дотримується цей проект, включають:
Метод обчислення GAS
Користувач повинен вказати два значення під час подання транзакції:
Під час виконання угоди буде стягнуто:
Кінцевий торговий збір = Загальна кількість витраченого GAS × Ціна GAS
Якщо під час виконання транзакції вичерпається GAS, відправник буде стягуватися за максимальну кількість GAS, зміни, внесені біржею, будуть скасовані.
Побудова плану GAS
Базова конфігурація
План GAS містить кілька компонентів, які не пов'язані з конкретними операціями, таких як розмір транзакції та максимальна одиниця GAS.
обсяг торгівлі
Більшість розмірів транзакцій на рівні КБ, але випуск MOVE модуля може досягати кількох тисяч байт. Проектна структура приблизно 100 КБ, більшість користувацьких модулів в межах 4-40 КБ. Спочатку розмір транзакції був встановлений на 32 КБ, а потім був скоригований до 64 КБ на основі відгуків спільноти.
Занадто великі транзакції можуть збільшити витрати на пропускну здатність мережі та вплинути на продуктивність. Щоб збалансувати масштаб і доступність, пул пам'яті може ігнорувати занадто великі транзакції.
найбільша одиниця GAS
Максимальна одиниця GAS, визначена в плані GAS, визначає максимальну кількість операцій, які можуть бути виконані в одній транзакції. Занадто високе налаштування може призвести до проблем з продуктивністю, таких як нескінченні цикли. Навіть при максимальному оновленні фрейму використовується менше ніж 90% від максимальної одиниці GAS (, встановленої на 1,000,000 ).
оцінка витрат на виконання
Оцінка витрат на виконання через базову структуру та аналітичні інструменти, оцінка відносних витрат команди MOVE та рідних функцій. Після врахування стабільності та безпеки системи, визначається остаточна кількість машинних інструкцій для виконання та визначається поточне значення в плані GAS, зважуючи на зберігання та максимальні одиниці GAS.
вартість зберігання
Доступ до сховища обмежений пропускною спроможністю пристроїв та IOPS. План зберігання GAS враховує миттєву дефіцитність та постійні витрати на зайнятість. Доступ до будь-якого елемента стану створює витрати, пов'язані з перевіркою всього стану блокчейну.
Зберігання GAS-кошту = проектний кошт + ( байт-кошту × кількість байтів )
Читання, створення та запис
Кожна транзакція стягує плату за читання/запис одного і того ж ресурсу лише один раз.
стабільна вартість одиниці GAS
Фіксована вартість одиниці GAS допомагає підтримувати стабільність GAS-плану, не піддаючись впливу ринкової вартості нативних токенів. Точність приблизно до 3-х цифр, вартість звичайної трансакції становить близько 700 одиниць GAS.
Участь у спільноті
Проект заохочує членів спільноти:
Коригування вартості GAS
План GAS використовується для зберігання конфігурацій в ланцюзі і може бути змінений через пропозиції з управління. Дизайн має масштабованість, що дозволяє оновлення через пропозиції. Складні зміни потребують оновлення програмного забезпечення вузлів і широкого впровадження, а в кінці нова версія повинна бути затверджена через пропозиції з управління.
Майбутні напрямки роботи
Як перша життєздатна GAS-рамка MOVE, цей дизайн закладає основу для майбутньої роботи:
Цей GAS відкриває нові можливості для екосистеми мови MOVE, в майбутньому є великий потенціал для розвитку та вдосконалення.