InfuraやAlchemyのようなノードサービスプロバイダーはどのような役割を果たしていますか?

直子 真綾
直子 真綾
Computer science student passionate about Ethereum's future; 热爱以太坊未来的计算机科学学生。

こんにちは!良い質問ですね。誰もが理解できるように、簡単な例え話を使って説明します。きっと理解してもらえるはずです。

想像してみてください。インターネットでサーフィンをしたいとします。例えば、動画を見たり、ニュースを読んだり。何が必要ですか?インターネットに接続する必要がありますよね?

ここで、2つの選択肢があります。

  1. 自分で専用回線を引き、基地局を建設する:自分でサーバーを購入し、自宅からグローバルインターネットの基幹ネットワークまで光ファイバーを敷設し、信号塔を建て、すべてのネットワークプロトコルを自分で書き…そして24時間体制でメンテナンスし、停電、回線切断、攻撃から保護します。
  2. ブロードバンドを契約する:通信会社に電話すると、担当者が来てブロードバンドを設置し、ルーターを取り付けてくれます。毎月少額を支払い、LANケーブルを差し込むかWi-Fiに接続すれば、すぐにインターネットが使えるようになります。

ほとんどの人、いや、ほぼすべての人が2番目の選択肢を選ぶでしょう?なぜなら、それが安くて、手軽で、安定しているからです。


それでは、あなたの質問に戻りましょう。ブロックチェーンの世界では:

  • 「インターネットサーフィンをする」 は、「ブロックチェーンとのインタラクション」(例えば、ウォレット残高の照会、トランザクションの送信、DAppの実行など)に例えられます。
  • 「インターネット」 は、「イーサリアムブロックチェーンネットワーク」 に例えられます。

つまり、InfuraやAlchemyといったサービスプロバイダーは、あなたに 「ブロードバンドを契約させる」 インターネットサービスプロバイダーのような役割を果たすのです。

もし彼らがいなければどうなるか?(自分でノードを立てる)

もしあなたが開発者で、DApp(分散型アプリケーション)を作りたい場合、あなたのアプリケーションはブロックチェーン上のデータを読み取る必要があり、また新しいトランザクションをブロックチェーンに送信する必要もあります。これを実現するためには、「イーサリアムノード」に接続しなければなりません。

もし自分でやると選択した場合、つまり上記の「自分で専用回線を引き、基地局を建設する」に相当することになりますが、その場合は以下のことを行う必要があります。

  • 高性能なPCを購入する:高速なSSD(現在のイーサリアムのデータは数TBにもなる)、大容量メモリ、そして高性能CPUが必要です。
  • ノードソフトウェアをダウンロードして実行する:例えば、GethやNethermindなど。
  • 長い同期プロセス:初回起動時には、イーサリアムが誕生してから現在までのすべてのトランザクションをダウンロードして同期する必要があり、これには数日あるいはそれ以上かかることもあります。
  • 継続的なメンテナンス:24時間オンラインで安定したネットワークを確保し、常にソフトウェアの更新、脆弱性の修正、攻撃からの保護に気を配る必要があります。もしハードディスクがいっぱいになったり、マシンがクラッシュしたりすれば、DAppもダウンしてしまいます。

これは、小さなオンラインストアを開くために、Alibaba CloudやTencent Cloudのようなデータセンターを自分で構築するようなもので、コストが高く、難易度も高く、全く必要ありません。

InfuraとAlchemyの役割:プロフェッショナルな「ブロックチェーンネットワークオペレーター」

これらのノードサービスプロバイダーは、上記のすべての問題を解決するために存在します。彼らは何をしているのでしょうか?

  1. 彼らは「基地局」クラスターを構築済:彼らは自社で、数百、数千もの高性能で、世界中に分散配置されたイーサリアムノードを運用しています。これらのノードは非常に安定しており、常に最新の状態を保っています。

  2. 彼らはあなたにシンプルな「ルーター」を提供する:これらのノードに接続する複雑なプロセスを、シンプルなAPIインターフェースとしてパッケージ化しています。開発者として、ノードがどのように動作しているかを気にする必要はなく、URLのようなリンク(APIエンドポイント)を取得し、コードに設定するだけで、Wi-Fiに接続するのと同じように、イーサリアムネットワークに簡単に接続できます。

  3. 彼らは安定した高速サービスを保証する:あなたがブロックチェーンにリクエスト(例:「このアドレスにいくらありますか?」)を送信すると、InfuraやAlchemyは、利用可能なノードの中で最も空いていて応答が速いものに自動的にリクエストを割り当て、常に迅速な応答が得られるようにします。彼らには専門チームが24時間365日メンテナンスしており、個人で構築したノードよりもはるかに信頼性が高いです。

  4. 拡張機能の提供:基本的な接続サービスだけでなく、多くの「付加価値サービス」も提供しています。例えば、あるアカウントのすべての取引履歴を素早く照会したり(これはイーサリアム上で自分でやると非常に面倒)、取引成功後に通知を送ったりするなどです。これらのツールは、開発者の作業を何倍も楽にします。

まとめ

簡単に言えば、InfuraとAlchemyは、Web3世界の「クラウドサービスプロバイダー」または「ネットワークオペレーター」です。

彼らは、一般の開発者がブロックチェーンノードの運用とメンテナンスという重い作業から解放され、通常のインターネットAPIを呼び出すように、簡単、安定、低コストでブロックチェーンとインタラクションできるようにします。これにより、開発者は複雑なインフラストラクチャに手間をかけるのではなく、自分のアプリケーションの作成自体に集中できるようになります。

一般ユーザーにとっても、普段使っている多くのウォレット(MetaMaskなど)やDAppは、その裏側でInfuraやAlchemyのサービスに接続してイーサリアムネットワークと通信している可能性が高いです。

この説明が役立つことを願っています!