7つの概念がSolana開発の基礎を形成しています。アカウント、プログラム、instructions、トランザクション、手数料の順に読んでください。各項目は前の項目の上に構築されています。PDAの前にアカウントとプログラムを読んでください。CPIの前にプログラム、instructions、PDAを読んでください。
アカウント
Solanaは全ての状態をアカウントに保存します。アカウントは32バイトのアドレスをキーとするキーバリューストアです。各アカウントには5つのフィールドがあります:lamports、data、owner、executable、rent_epoch。
プログラム
SolanaのスマートコントラクトはsBPFにコンパイルされます。プログラムはステートレスであり、全ての可変状態はinstructionsを介して渡される別のデータアカウントに存在します。
Instructions
1つのプログラムを実行するリクエストで、プログラムID、アカウントリスト、不透明なデータバイトを含みます。複数のinstructionsが1つのトランザクションに構成されます。
トランザクション
Solanaにおける実行のアトミック単位。署名とメッセージ(アカウントアドレス、最近のブロックハッシュ、コンパイル済みinstructions)を含みます。最大1232バイト。
手数料
署名ごとに5,000 lamportsの基本手数料に加え、リクエストされたコンピュートユニットに基づくオプションの優先手数料。トランザクションあたり最大140万コンピュートユニット。
プログラム派生アドレス(PDA)
プログラムIDとシードから派生した決定論的アドレス。所有プログラムのみがinvoke_signedを介してPDAの代わりに署名できます。
クロスプログラム呼び出し(CPI)
invokeまたはinvoke_signedを介して1つのプログラムが別のプログラムを呼び出すこと。署名者と書き込み可能な権限は呼び出し先に拡張されます。instructionスタックの最大深度は5(トップレベルとCPIを含む)。
その他のトピック
トークン
Solana上の代替性および非代替性デジタル資産(SPLトークン、Token-2022)。
クラスターとエンドポイント
Mainnet、Devnet、Testnet:JSON-RPCリクエストを処理するvalidatorグループ。
| クラスター | パブリックRPCエンドポイント | 用途 |
|---|---|---|
| Mainnet | https://api.mainnet.solana.com | 本番環境 |
| Devnet | https://api.devnet.solana.com | 開発者による実験 |
| Testnet | https://api.testnet.solana.com | validatorのテスト |
Is this page helpful?