登录 后可观看高清视频

Solana 基础:账户、指令和交易

25次播放
2026-03-07

视频 AI 总结: 本视频是Solana开发系列教程的第二天,主要介绍了Solana开发中的核心概念:账户(Account)、指令(Instruction)、交易(Transaction)和程序(Program)。视频详细解释了这些概念的定义、作用及其相互关系,并通过Solana CLI和TypeScript(使用Gil库)演示了如何实际操作,例如查询账户余额、发起转账和添加备忘录。视频强调了Solana的账户模型、交易的原子性以及通过明确账户列表实现并行处理的机制。

视频中提出了哪些关键信息:

  1. 账户 (Account):
    • Solana上所有存储的数据都存在账户中,包括Sol余额(以Lampards计)和任意数据。
    • 账户是Solana状态的组成部分,程序本身也是一种账户。
    • 每个账户都有地址、Sol余额、所有者(owner)和数据。
    • Lampards是Sol的最小单位(1 Sol = 10亿 Lampards)。
  2. 程序 (Program):
    • 定义了对账户进行操作的逻辑,可视为函数库。
    • 程序也是账户,包含可执行的机器码。
    • 在交易中的指令被执行时,程序由验证者运行。
  3. 指令 (Instruction):
    • 调用特定程序中特定功能的请求,包含要调用的程序地址、指令数据(指定功能和参数)以及所需账户列表。
    • 例如,系统程序(System Program)的转账指令。
  4. 交易 (Transaction):
    • 包含一个或多个指令的容器,用于提交给Solana网络执行。
    • 组成部分: 指令列表、费用支付者(Fee Payer)、生命周期(通常是最新区块哈希)、以及所有涉及的账户列表。
    • 账户列表要求: 交易必须明确列出所有读写操作涉及的账户。
    • 可写标志 (Writable Flag): 任何将被修改的账户必须标记为可写。
    • 签名者标志 (Signer Flag): 需要签名的账户必须标记为签名者。
    • 原子性 (Atomicity): 交易是原子的,所有指令要么全部成功,要么全部失败并回滚(交易费用除外)。
    • 并行处理: Solana通过交易中明确的账户列表和可写标志,实现交易的并行处理,从而提高吞吐量。
  5. 开发实践:
    • 演示了如何使用Solana CLI进行转账和添加备忘录。
    • 介绍了如何使用TypeScript(通过Gil库)获取账户信息、构建和发送交易。
    • 推荐使用Gil或Solana Kit等维护中的库进行开发。