コンテンツへスキップ
0%

MetaMaskのトランザクションを無料で高速かつ安定させる方法

著者: Albert Hu

最終更新日: 2021年10月19日1分で読めます

MetaMaskとは?どのような仕組みか?

MetaMaskは、最も広く使われているEthereumツールの1つです。暗号資産ウォレットとして、ブラウザ拡張機能やモバイルアプリを通じて複数のアカウントにアクセスできます。開発者はアプリのテストにMetaMaskを使い、トレーダーはDeFiプロトコルでの貸し借りに、コレクターはNFTの購入に使っています。今のWeb3の世界では欠かせない存在です。

とはいえ、MetaMaskがこれらのトランザクションをどのように処理しているかご存知でしょうか?ウォレットとして、アカウント残高、トランザクション履歴、ガス代の見積もりなど、重要な情報をユーザーに示す必要があります。また、ユーザーに代わってブロックチェーンにトランザクションを送信する役割も担っています。では、MetaMaskはこれらの重要な情報をどのように処理しているのでしょうか?

結論:Alchemyの無料の専用RPCエンドポイントの利用をおすすめします

MetaMaskはノードに接続することで、ブロックチェーンへの情報の読み書きを行っています。これは、すべてのMetaMaskユーザー間でリソースを共有するデフォルトのノードプロバイダーを使って接続します。デフォルトの共有プロバイダーがあることで、ユーザーはセットアップが簡単になりますが、多くのデメリットもあります。

障害が発生したとき、最も重要なタイミングで重要なトランザクションが送信できずに立ち往生することは避けたいはずです。

Alchemy RPCを使ってガス代を払いすぎないようにする
Alchemy RPCを使ってガス代を払いすぎないようにする

ノードプロバイダーとしてAlchemyを使うメリットは?

Alchemyは、他のノードプロバイダーで一般的に起きているデータの不整合、スケーラビリティ、障害といった問題を解決する、まったく新しいWeb3インフラ技術Supernodeを開発しました。AlchemyをMetaMaskウォレットと接続することで、Mempool VisualizerやAlchemy Notifyといった、モニタリングとデバッグのための画期的なツールも利用できるようになります。

2つの短いシナリオで説明します。

シナリオ1: NFTのミント

MetaMaskを使って、最新のNFTドロップをミントするためにdappへトランザクションを送信しているとします。時間が経っても、トランザクションが完了せず、その理由もわからない場合、どうすればよいでしょうか?

Alchemyのmempoolウォッチャーを使えば、トランザクションがネットワークの他の部分にブロードキャストされる前の、保留中のトランザクションを確認できます。mempool内の各トランザクションをクリックすると、ガス代が不足しているために失敗したか、nonce値が競合するトランザクションがあるかなど、詳細な情報を確認できます。トランザクションがどこで、なぜ滞っているのかを把握できるため、トレードを最大限にコントロールしたい場合、この可視性は非常に重要です。

MetaMaskのネットワーク設定:MainnetをAlchemy RPCエンドポイントに変更
MainnetをAlchemyに変更

シナリオ2: トランザクションへのアラート設定

次に、重要なトランザクション(例:ウォレットから1 ETHを超える送金)が発生したときに自分宛にアラートを送りたい場合や、トランザクションがマイニングされた後にドロップされたことを知りたい場合を考えてみましょう。通常であれば、MetaMaskでトランザクションを送信した後、ブロックチェーンエクスプローラーを使って履歴を手作業で確認することになりますが、これは時間がかかり、ミスも起こりやすい方法です。

Alchemy Notifyを使えば、トランザクションが発生するたびに、オンチェーンのトランザクションデータを自分のアプリへ自動的にプッシュするWebhook機能を利用できます。この機能により、ブロックチェーンデータを必要な場所へ届けることができます -- Slack、Discord、税務会計アプリケーションなど、可能性は無限大です :)

ブロックチェーンデータを必要な場所へ持ってくる
ブロックチェーンデータを必要な場所へ持ってくる

では、MetaMaskのノードプロバイダーをどう変更するか?

さて、これらの優れたメリットをMetaMaskウォレットで得る方法が気になっているところでしょう。

ご安心ください :) 手順はとても簡単です。一緒に進めていきましょう。

Alchemyの無料アカウントを作成する

これは非常に重要なステップです。

今すぐ実行してください。こちら。

次にMetaMaskでカスタムRPC設定を作成する

準備はよろしいでしょうか?

  1. MetaMaskウォレットに移動し、上部のネットワークのドロップダウンをクリックして、一番下にあるCustom RPCを選択します。
「Custom RPC」ボタンをクリックすると新しいウィンドウが開きます。
「Custom RPC」ボタンをクリックすると新しいウィンドウが開きます。
ネットワーク詳細欄が空のMetaMaskカスタムRPCフォーム
これらのフィールドを入力していきます。

このカスタムRPCの情報欄を入力していきましょう。

  1. Network Nameには、どのチェーンに接続しているかがわかる名前を自由につけることができます。例えば、Polygon Mainnetに接続する場合、この設定を「Alchemy - Polygon Mainnet」と名付けることができます。

  2. New RPC URL欄には、Alchemy DashboardからHTTP APIキーのURLを取得して入力します。ダッシュボードのアカウントをお持ちでない場合は、上記の「Alchemyの無料アカウントを作成する」のステップに戻り、アカウントを作成してください。

Alchemyアプリのチェーンが、接続したいチェーンと一致していることを確認してください。
Alchemyアプリのチェーンが、接続したいチェーンと一致していることを確認してください。
  1. 接続したいネットワークのChain IDを調べます。
  • Ethereum Mainnet - 1
  • Ropsten Testnet - 3
  • Rinkeby Testnet - 4
  • Goerli Testnet - 5
  • Kovan Testnet - 42
  • Polygon (Matic) Mainnet - 137
  • Mumbai Testnet - 80001
  • Arbitrum One - 42161
  • Optimism (Optimistic Ethereum) - 10
  • Optimistic Kovan - 69
  1. Currency SymbolとBlock Explorer URLは任意です。ほとんどのチェーンでは、ここへの入力は不要です。L2やサイドチェーンの場合は、これらを設定しておくと便利です。

Polygon:

Arbitrum:

Optimism:

完了すると、設定はこのようになります。
完了すると、設定はこのようになります。

次のような警告が出ても心配する必要はありません:

This Chain ID is currently used by the Polygon network.

これは、同じチェーンに対して別の設定がすでに存在することをMetaMaskが知らせているだけで、問題なく許可されています。入力欄をすべて埋めたら、Saveを押してください。

Alchemy経由でPolygon Mainnet用に設定を完了したMetaMaskカスタムRPC
以上で完了です!

あとはゆったり構えて、トランザクションを送信するだけ

いつも通りにMetaMaskを使うだけです :)

そしてさらに...Alchemyの開発者プラットフォームを活用する

Alchemyを接続すると、Alchemy Dashboardであなたのアプリを確認し、MetaMaskが行っているAPI呼び出しを見ることができます:

Alchemy Dashboardであなたのアプリを確認する
Alchemy Dashboardであなたのアプリを確認する

または、Mempool Watcherで保留中および承認済みのトランザクションを追跡できます:

私たちのツールを使うと、mempoolはこのように見えます!
私たちのツールを使うと、mempoolはこのように見えます!

さらに、Alchemy NotifyでWebhookを設定すれば、ウォレットの活動について自動的にアラートを受け取ることもできます:

Alchemy Notifyでウェブフックを設定する
Alchemy Notifyでウェブフックを設定する

ご覧の通り、MetaMaskのトランザクションに関して何をしたいとしても、Alchemyがサポートします。

このガイドが役に立ったら、Twitterで@Alchemyにぜひ声をかけてください :)

Alchemy Newsletter

リリース情報をいち早く受け取る

ニュースレターに登録する

Alchemyの最新のプロダクト情報とリソースをお届けします

A
O
D
+
80,000人以上が購読中

メールアドレスを入力すると、当社のマーケティング情報およびプロダクト最新情報の受信に同意したことになります。Alchemyが受け取った情報をプライバシー通知に従って取り扱うことに同意するものとします。購読はいつでも解除できます。