paper-plane提交交易

如何提交交易

Astralane 为您的需求提供了多种选项,以下是我们为交易发送提供的一些 RPC 方法。

sendTransaction

circle-info

若追求最快的交易执行速度,推荐使用 sendTransaction 方法。

此 RPC 调用兼容所有 Solana SDK/Libraries,可以无缝替换你已有的交易流程。它会通过 Astralane 的 SWQoS 合作路径(如 Jito 和 Paladin,需较高的小费),确保优化处理并提升执行可靠性。 只需将 RPC URL 改为 Astralane 提供的,按照常规发送交易,并添加一条提示小费指令即可。

JSON-RPC 参数格式:

"params" : [                     // params is an array
    <encoded_transaction>,
    <Transaction Configuration>,
    <mevProtect true/false>
]
参数
类型
类型

Encoded Transaction

String

条经过 base64 编码的交易。

Transaction Configuration

JSON Object

建议设置以下参数:

  • encoding 设为 base64

  • skipPreflight 设为 true

MeV Protect

JSON Object

可选 将此参数设为 true 将启用 MEV 保护功能,默认为 false

示例 JSON

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "sendTransaction",
  "params": [
    "base64_encoded_txn1",
    {
      "encoding": "base64",
      "skipPreflight": true
    },
    { "mevProtect": true }
  ]
}

请注意,sendTransaction 端点支持 max_retries: None 和 min_context_slot: None 功能,这对于不希望我们的质押节点重试其交易的交易者非常有用。请联系我们以获取有关理想用例的更多信息。

**新 - 如果最小小费满足发送给 Paladin 的最小小费要求,端点也可用于向 Paladin 广播。阅读下面的更多优势。。

sendBundle

当你的操作需要原子执行时,请使用 sendBundle 方法。 此端点允许你一次性以原子方式发送至多 4 笔交易,它们会按顺序执行。如果其中任意一笔失败,整个 Bundle 会回滚,确保一致性与可靠性。

参数
参数
说明

Boolean

可选 如果捆绑包中仅包含一笔交易且此参数为 false,则该交易也会通过 sendTransaction 管道发送。默认为 false

Request:

Response:

您的交易签名列表

circle-info

Note: MAX_TRANSACTIONS_IN_BUNDLE = 4

sendIdeal

非常适合狙击手!由于验证器分为 JITO 验证器和普通验证器,交易者经常在 jito 小费上花费更多和优先费用上花费更多之间产生矛盾。持久随机数提供了一种缓解此问题的方法。

我们的 sendIdeal RPC 方法接受两笔交易:

一笔交易具有高优先级费用 + 最低小费

另一笔交易具有高小费 + 低优先级费用

我们通过先进的 SWQoS 和捆绑管道路由它们。使用持久随机数,一旦一笔交易完成,另一笔交易就会自动取消 — 确保最佳效率和成本节约。

如果您不想自己管理持久随机数帐户,我们还为此提供托管服务,我们为您使用的每个 api 密钥创建一个随机数帐户,您可以使用我们的 getNonce rpc 调用查询它们。请按照以下集成步骤来充分利用此功能:

步骤 1:生成Nonce指令

circle-info

如果您已经有一个现成的 nonce 帐户,则只需传入您的 nonce 帐户,您只需传入您的 nonce 帐户公钥即可,而不必传入 API 密钥。响应仍将包含您解析的 nonce。

要使用这个 nonce,只需将提前 nonce 指令作为交易中的第一个指令即可。

步骤 2:生成交易并在提交前进行部分签名

circle-info

使用 Astralane 的托管 nonce 账户时,请确保使用 partial_sign 方法签署交易。如果您不使用托管 nonce 账户,请继续使用标准签名方法。

**新 - 如果最小小费满足发送给 Paladin 的最小小费要求,则端点也可用于向 Paladin 广播。阅读下面的更多优势。

Request

Response

circle-info

您的交易的延迟性能将取决于当前的网络动态。请通过电报联系我们,获取有关您操作的理想设置的建议

sendPaladin (Beta)

Paladin 是一种定制的 TPU 端口实现,它提供了一种更高效的方式将您的交易直接发送给领导者。paladin 客户端目前在 10% 的 Solana 网络上运行(截至 2025 年 3 月 10 日)Read morearrow-up-right

步骤 1:跟踪圣骑士领袖 由于并非所有插槽都有圣骑士验证器,因此我们提供了一个圣骑士领袖跟踪器端点,可用于了解哪些插槽有圣骑士领袖。以下是跟踪器集成的一些一般准则,可根据领袖信息动态发送交易:

必须使用 gRPC 跟踪当前领导者,因为普通 RPC 在此场景下速度过慢,无法有效使用。 若当前无法使用 gRPC,建议将配置中的 enableFallback 设为 true 以获得最佳性能。

  1. 获取当前时期的所有 Palidator 公钥

或者,也可以使用:

  1. 获得下一任 Palidator 领导者职位

  1. 在指定时间段内或之后获取下一任领导者 Palidator

circle-exclamation

第二步:构建 Paladin 交易

circle-info

请参考最低小费要求arrow-up-right:使用限制

使用 sendPaladin 方法来针对这些 Paladin 领导者的 slots 发送交易。请确保在发送时满足 最小手续费(min tip)最小优先费(min priority fee) 的要求。

交易将进入一个小型竞拍(auction)机制,最终排序原则如下:

  1. 优先根据 priority fees(优先费) 排序;

  2. 若出现优先费平局,则根据 向 Astralane 提示小费地址支付的小费数额(tiparrow-up-right 决定顺序

请求参数结构示例:

Parameter
Type
Description

Boolean

必填。启用后,失败交易将被直接丢弃而非以失败状态上链。默认为 false

Boolean

必填。设为 true 时:若当前时段领导者非 Paladin 或您的交易未能在 Paladin 领导者时段拍卖中胜出,交易将通过我们的 sendTransaction 管道发送;设为 false 时,将抛出错误提示(如“无效请求:交易在非 Paladin 时段接收且未启用降级机制,交易将被静默丢弃”)。

circle-info

为了有效使用此功能,请务必使用我们的 Paladin Leader API 端点来跟踪活跃领导者和时段时间,并相应地调整小费/费用。通过专用端点更新您的配置,以实现最佳成本控制。


需要帮助吗?

加入我们的 Discordarrow-up-right 获取技术指南、集成支持和实时更新。

Last updated