新着:HeliusがLight Protocolを買収
Solana RPCノードの仕組み
ブログ/基礎

Solana RPCの仕組み

共同創業者兼CEOXのMert MumtazLinkedInのMert Mumtaz
読了時間:3分

暗号資産におけるRPCとは?

従来の(Web2)ソフトウェア開発では、通常、APIを利用して必要なデータを取得します。たとえば、決済データにはStripe API、SMSデータにはTwilio、金融データにはBloomberg、銀行データにはPlaidを利用します。

ここで注目すべきなのは、求めているデータが中央集権型の組織によって囲い込まれ、管理されていることが多い点です。

暗号資産では、必要なデータはすべてオンチェーンにあります。完全にパーミッションレスで公開されており、誰でも閲覧して利用できます。では、どうすれば取得できるのでしょうか? そこで使うのがRPCです。

RPCは厳密にはRemote Procedure Call(リモートプロシージャコール)の略ですが、RPCノードを指す略称としてもよく使われます。RPCノードはブロックチェーンネットワークに参加し、開発者が呼び出せるメソッド(リモートプロシージャコール)を公開するノードです。

SolanaでRPCはどのように機能するのか?

Solanaが機能するには、そのソフトウェアクライアントを実行する分散型ノードネットワークが必要です。

これらのノードは、バリデータとRPCの2種類に分けられます。

どちらのノードにも重要な共通点があります。ブロックチェーンを継続的に監視し、最新のデータ(または状態)を保存していることです。

ただし、両者には決定的な違いが1つあります。

バリデータは投票(例:「はい、このブロックは有効です」)を行い、コンセンサスに参加するノードです。

RPCは投票を行わず、オンチェーンデータを扱うためのリクエストを処理するノードです。

RPCを呼び出すと、ブロックチェーンに参加しているノード上のプロシージャや関数が実行されます。そのノードはネットワークに参加しているため、最新のデータを把握しており、リクエストに応じてそのデータを提供できます。

Solana RPCの利用方法

Solanaブロックチェーンからデータを取得するには、ネットワークに参加しているRPCノードへJSON-RPCリクエストを送信する必要があります。

一般的なJSON-RPCリクエストは次のようになります。

コード
curl http://localhost:8899 -X POST -H "Content-Type: application/json" -d '  { "jsonrpc": "2.0","id":1,"method":"getBlock", "params": [430, { "encoding": "json", "maxSupportedTransactionVersion":0, "transactionDetails":"full", "rewards":false } ] }

このリクエストは、localhost:8899にあるRPCノードに対してgetBlock RPCメソッドを要求します。このノードはSolanaブロックチェーンのソフトウェアクライアントを実行しているため、リクエストを受信した際の処理方法を把握しています。

実際には、このようなJSON-RPCリクエストを直接扱うことはほとんどありません(もちろん扱うこともできます)。多くの開発者はRPCクライアントを利用します。最も広く使われているのはSolana Web3 JSライブラリで、こちらから確認できます。Solanaで利用可能なJSON RPCメソッドの全一覧については、ドキュメントをご覧ください。

RPCを使い始める方法

RPCは極めて重要です。RPCがなければ、ブロックチェーンを扱うことは文字どおりできません。そのため、RPC体験の向上を専門とする企業があります。RPCマシンには非常に大きな負荷がかかるため、高負荷時にも優れた性能を発揮することが不可欠です。優れたRPCプロバイダーは信頼性が高く、安定したパフォーマンスを提供し、エンドユーザーが使用傾向を時系列で確認できるメトリクスも公開します。

HeliusはSolanaネイティブのエンジニアチームです。あらゆる開発者に最高のRPC体験を提供することを使命としています。

メール登録もクレジットカードも不要です。こちらからわずか2クリックで無料で始められます。

今回は、Solana RPCについて初心者向けにごく簡潔に紹介しました。すでにご存じの内容も多かったかもしれません。次回は、RPCの最適化、注意点、さらに高度なトピックについて解説します。お読みいただきありがとうございました!

‍

Heliusを購読

Solana開発の最新情報や新しい記事の公開通知を受け取れます