Solidity University

Gas и Комиссии

Gas — это единица измерения стоимости выполнения операций в сети Ethereum.

Каждая транзакция или выполнение контракта требует использования вычислительных мощностей Ethereum, за это пользователи платят комиссии называемыми газом (gas fee).

Цена за газ оплачиваются в эфире (ETH), но для удобства записываются в единицах измерения Gwei.

Gwei равен 0,000000001 ETH (10-9 ETH). Вместо записи 0,000000001 ETH, мы просто говорим 1 Gwei, что куда более лаконично и удобно.

В Ethereum газ используется для контроля использования вычислительной мощности, памяти и сетевой пропускной способности, необходимых для выполнения той или иной операции.

При отправке транзакции, пользователь указывает, сколько газа он готов заплатить за ее выполнение (в кошельках это делается автоматически).
Если стоимость транзакции превышает количество газа, которое указал отправитель, транзакция не будет выполнена.
На картинке мы видим как в кошельке Metamask можно изменить количество gas за отправку транзакции.
Стоимость газа в сети Ethereum

От чего зависит стоимость Gas?

Как вы уже поняли стоимость транзакции в первую очередь зависит от сложности операции, которую предстоит выполнить. Второй фактор - нагруженность сети, чем больше нагрузки испытывает в конкретный момент Ethereum, тем больше будет цена за единицу Gas.

Расчет полной комиссии за транзакцию выполняется по следующей формуле: Gas units (limit) * (Base fee + Tip)

  • Gas Units (limit) - Максимальное количество единиц Gas, которое вы готовы заплатить в конкретной транзакции.
  • Base Fee (Max) - Максимальное количество GWEI, которые вы готовы платить за единицу Gas. Разница между максимальной базовой комиссией и фактической (после выполнения транзакции) возвращается.
  • Tip - Плата за приоритет или чаевые. (Влияет на приоритетность обработки транзакции)
Формула рассчета стоимости транзакции в Ethereum

К счастью для вас, MetaMask рассчитывает приблизительную плату за газ, которую вы должны установить для себя, исходя из того, как быстро вы хотите, чтобы ваша транзакция была подтверждена.

Примеры использования Gas

  1. Отправка эфира (ETH) с одного кошелька на другой требует определенного количества газа. Если установлена слишком низкая цена за единицу газа, транзакция может занять много времени или вообще не выполниться.
  2. Выполнение и деплой контрактов также требует использования газа. Если контракт содержит операции, которые требуют большого количества ресурсов, стоимость выполнения контракта может быть очень высокой.
  3. Обновление данных в блокчейне также требует использования газа. При этом чтение информации (view функции) исполняются бесплатно.

Вывод

Gas позволяет установить предсказуемые затраты на выполнение операций в сети Ethereum и защищает ее от злоупотреблений и DDoS-атак. Умение правильно выставлять цену за газ и количество необходимого газа для выполнения операций может сэкономить вам значительную сумму денег, особенно при деплое больших смарт-контрактов.

Подпишись и получи доступ к бесплатным курсам и обучающим материалам от Solidity University! Изучай Solidity и Блокчейн Разработку вместе с нами!

Информация об авторе
Nick Newermin

Nick Newermin

Привет! Меня зовут Николай, я занимаюсь web3 разработкой уже более пяти лет, веду канал "Блокчейн Разработчик" и создаю образовательную онлайн платформу Solidity University. #Web3ForEveryone

Solidity University

Подпишись и получи бесплатный доступ к нашим курсам и обучающим материалам

Solidity University

Отлично! Вы успешно зарегистрировались.

С возвращением! Вы успешно вошли в систему.

Вы успешно подписались на Solidity University.

Успех! Проверьте вашу электронную почту для входа по магической ссылке.

Успех! Ваши платежные данные обновлены.

Ваши платежные данные не были обновлены.