> ## Documentation Index
> Fetch the complete documentation index at: https://docs.orbitflare.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Apex：Solana 交易上链

> OrbitFlare Apex 同时通过质押加权的验证者客户端、Jito 捆绑包和直连 TPU 三条路径将每笔交易竞速送达领导者，帮助您的 Solana 交易上链。

<CardGroup cols={4}>
  <Card title="三条路径同时发送" icon="code-branch">
    质押加权的验证者客户端、Jito 捆绑包和直连 TPU
  </Card>

  <Card title="8 个区域" icon="globe">
    Apex 端点遍布欧洲、美国和亚洲
  </Card>

  <Card title="仅在上链时付费" icon="coins">
    小费就包含在您的交易之中
  </Card>

  <Card title="只需替换 URL" icon="right-left">
    标准 `sendTransaction`，另有二进制 HTTP 和 QUIC
  </Card>
</CardGroup>

<Note>
  **Apex 目前处于测试阶段，仅限受邀用户使用。** 您的账户启用后，请在 [OrbitFlare 控制台](https://orbitflare.com/dashboard)的 **Dashboard > Apex** 下创建 API 密钥。如需申请访问权限，请通过 [Discord](https://discord.gg/orbitflare) 联系我们。
</Note>

## Apex 的作用

Apex 是 OrbitFlare 的 Solana 交易上链服务。您发送一笔带有小费的已签名交易，接收它的 Apex 端点会同时通过三条路径，将交易竞速送达当前及即将出块的领导者：

| 路径                      | 如何到达领导者                                                    |
| ----------------------- | ---------------------------------------------------------- |
| **质押加权的验证者客户端 (SWQoS)** | 由合作验证者运行的验证者客户端通过已质押的 QUIC 连接转发您的交易，领导者会优先处理这类连接，而非未质押的流量。 |
| **Jito 捆绑包**            | 您的交易会提交给 Jito 区块引擎，出价由您的小费提供资金。                            |
| **直连 TPU**              | Apex 端点通过 QUIC 直接发送到领导者的 TPU 端口。                           |

哪条路径先到达，哪条就胜出。其余路径会按签名去重，因此您的交易只会执行一次。Apex 会持续重试，直到交易上链或其 blockhash 过期。

## 一次发送的流程

<Steps>
  <Step title="构建并签名">
    照常构建您的交易，并添加一条向 Apex 小费账户转账的 SystemProgram 指令。同时设置计算单元上限和价格。参见[小费](/cn/apex/tips)。
  </Step>

  <Step title="发送到最近的 Apex 端点">
    使用 JSON-RPC `sendTransaction`、二进制 HTTP 路由或持久 QUIC 连接。参见[发送交易](/cn/apex/sending-transactions)。
  </Step>

  <Step title="Apex 验证并竞速发送">
    端点会检查您的 API 密钥、速率限制、交易和小费，然后通过全部三条路径发送，并持续重试，直到交易上链或 blockhash 过期。
  </Step>

  <Step title="确认">
    已接受并不代表已上链。请在任意 Solana RPC 上轮询 `getSignatureStatuses` 进行确认。参见[最佳实践](/cn/apex/best-practices#确认每一次发送)。
  </Step>
</Steps>

## 为什么未上链时小费不产生任何费用

小费是您交易内部的一条指令。如果交易始终未上链，小费就不会执行，因此您无需支付任何费用。没有按发送次数收取的订阅费，被拒绝或已过期的交易也不收费。

## 传输方式

|         | JSON-RPC                        | HTTP 二进制                                                 | QUIC               |
| ------- | ------------------------------- | -------------------------------------------------------- | ------------------ |
| **调用**  | `sendTransaction`, `sendBundle` | `POST /send`, `/send-bin`, `/send-batch`, `/send-bundle` | 在持久连接上每笔交易一个流      |
| **认证**  | `x-api-key` 请求头                 | `x-api-key` 请求头                                          | 由您的 API 密钥派生的客户端证书 |
| **最适合** | 直接接入现有代码、任意语言、浏览器               | HTTP 上开销最低、批量发送                                          | 需要最快路径的机器人         |

传输方式不会改变路由或优先级。起作用的是小费和您的优先费。

## 浏览文档

<CardGroup cols={2}>
  <Card title="快速入门" icon="rocket" href="/cn/apex/quickstart">
    使用 cURL、JavaScript、Python 或 Rust 发送您的第一笔带小费的交易。
  </Card>

  <Card title="端点与区域" icon="globe" href="/cn/apex/endpoints">
    主机名、端口，以及如何选择 Apex 端点。
  </Card>

  <Card title="小费" icon="coins" href="/cn/apex/tips">
    小费规则、小费账户、下限，以及小费的用途。
  </Card>

  <Card title="发送交易" icon="paper-plane" href="/cn/apex/sending-transactions">
    JSON-RPC、HTTP 二进制与批量，以及 QUIC。
  </Card>

  <Card title="捆绑包" icon="layer-group" href="/cn/apex/bundles">
    由 1 到 4 笔交易组成的原子组。
  </Card>

  <Card title="Rust 客户端" icon="rust" href="/cn/apex/rust-client">
    `apex-sender-client` crate：QUIC、0-RTT 和 HTTP 辅助工具。
  </Card>
</CardGroup>
