イーサリアム DeFi のガス消費には改善の余地があるのでしょうか?
この記事はDODOZooに掲載され、著者:レイミンダ、DODO創設者。
ここでGasの問題について体系的に紹介します。
Gasの使用メカニズム
まず、イーサリアムのGasは前払いメカニズムです。DEXの使用中に、3つのGasの数値が表示されます。
A. DEXのフロントエンドに表示されるGas
B. ウォレット署名時に見るGasリミット
C. Etherscanで見る実際のGas消費
例えるなら、ホテルに宿泊する場合:
A. 旅行サイトで見たホテルの価格予想 1000
B. ホテルがあなたの前払いを3000円請求する
C. チェックアウト時に、宿泊と飲み物で実際に1200円かかる
ここでは、まず実際の消費について重点的に議論し、次にこの数字をユーザーにできるだけリアルに表示する方法について考えます。
Gasが高いとは?
私たちが言う「取引に100ドルのGasがかかった」というのは:
「Gas * GasPrice * ethPrice」
ここで、GasPriceはユーザーが決定します。迅速に取引を行いたい場合は多く支払い、急がない場合は少なく支払います。ethPriceは市場によって決まります。
実際に製品に影響を与えるのはGas消費そのものです。したがって、Gasを深く理解するためには、私たちの議論の基礎をドルからGasの数量に変える必要があります。
数量級の概念
では、Gasは主にどこで消費されるのでしょうか?
大きく分けて2つの部分: 1. データ書き込み 2. 外部呼び出し
Gasの最適化とは、可能な限り少ないデータ書き込みと外部呼び出しを使用してビジネスロジックを完了することを指します。
データの書き込みには約20,000〜5,000 Gasがかかり、契約呼び出しには約3,000 Gasがかかります。これは主な部分であり、計算実行環境の複雑さから、以下に挙げるすべてのGas消費は小範囲で変動します。
ERC 20の送金は2回の書き込みを含み、約60,000 Gasがかかります。
ERC 20の承認は1回の書き込みを含み、約45,000 Gasがかかります。
Uniswapの単一ジャンプ取引は約110,000 Gasがかかります(例:USDT→ETH)。
Uniswapの二重ジャンプ取引は約170,000 Gasがかかります(例:USDT→ETH→UNI)。
Uniswapの三重ジャンプ取引は約230,000 Gasがかかります(例:USDT→ETH→WBTC→LINK)。
このように、Uniswapでも一度のスワップでGas消費の差が大きくなる可能性があります!
これはルーティング戦略が非常にシンプルな場合です。ルーティング戦略が複雑になると、例えば1inchやMatchaの場合、取引のGasは150,000から1,000,000の間で変動することがあります。
したがって、あるプラットフォームのGasが高いとは単純に言えません。
集約器のGasはUniswapよりも高いように見えますが、集約器を捨てるべきですか?
そうではありません。
集約器はGasが高いですが、それは無駄に高いわけではありません。高いのは追加のロジックを実行する必要があるからであり、これらの追加ロジックは大きな利益をもたらします。利益がGasの追加コストをカバーできるなら、集約器を使用すべきです。
過去には集約器がGasをあまり気にしなかったかもしれませんが、現在ではGas価格とイーサリアムの価格の上昇により、Gasのドルコストが100倍増加しました。したがって、DODOV2ではGasと価格を総合的に比較し、平均コストが最も低い解決策を提供します。
DODOは高いのか?
高いとも言えますし、そうでもありません。
DODOはルーティングを実行する際、元の流動性に対して約40,000 Gasの関数呼び出しを外注します。
しかし:
- Gas補助を受けた後、DODOのGas消費は流動性源と同じかそれ以下にすることができます。
- 価格の利点を考慮すると、Gasのコストは高いですが、平均コストはDODOが最も低いです。
Gasを合理的に表示する方法
以前のホテルの例を思い出してください。
もしあなたが旅行サイトなら、ユーザーの実際の支出をできるだけリアルに表示することが目的です。
一般のユーザーはすでに教育を受けており、ホテルに宿泊する際、事前承認が実際の消費よりも多いことを理解しています。
A. DEXのフロントエンドに表示されるGas
B. ウォレット署名時に見るGasリミット
C. Etherscanで見る実際のGas消費
しかし、イーサリアムのユーザーはまだこれらのメカニズムを十分に理解していません。彼らはウォレットが表示するのは事前承認であることを知りません。もしウェブページ上に直接数字Cを表示し、ウォレットが表示する数字Bが非常に大きいと、ユーザーは非常に混乱するでしょう。
したがって、DODOのウェブページではまず数字Bを表示し、ウォレット側との統一を保証します。次に数字Cを表示し、ユーザーが驚かないようにします。
ここで0.084は数字A、すなわちウォレットの事前承認です。0.084-0.042は数字C、すなわちDODOが予測する実際の支出です。このシナリオでは、あなたの実際の支出はUniswapの単一ジャンプとほぼ同じです。
DODOのGasには改善の余地がありますか?
あります。DODOV2では主に以下の点で改善が見られます:
• Gasと価格を総合的に比較し、価格の利点があってもGasが高すぎてユーザーの利益が損なわれることを避ける;
ルーティングの改善により上層の計算コストを削減;
• V2プールのGas最適化により下層の計算コストを削減;
• より正確なGas Priceの推定により、ユーザーが正確に優先順位を付けられるようにする(この点は星火マイニングプールのGasnowサービスに感謝);
• BSCおよびL2の平行移行をサポート。
まとめ
Gasはすべてのプロジェクトが避けられない痛みであり、これは幸せな悩みです。私はイーサリアムで1 gweiで取引をパッケージする厳しい時期を経験しました。その時、チェーン上の取引はほとんど無料のようでしたが、生活は非常に厳しかったです。
現在、DeFiの価値が発見され、人々の取引活発度が大幅に向上し、Gas価格も高騰しています。すべてのプロジェクトは、最小限の読み書き操作でビジネスを完了し、イーサリアムエコシステムの貴重なブロックスペースを節約する義務があります。
さらに、すべてのプロジェクトは、ユーザーに安価で安全なL2ソリューションを見つける義務があります。
DODOは常にGasの問題を研究プロジェクトとして扱い、研究の最前線に立っています。私たちはユーザーがV2によるGasの最適化を早く体験できることを期待しており、Gasの最適化に関する提案を歓迎します。