概要
事前確認は、トランザクションが観察できる最初の段階でストリームの送信を行います。エントリに集められてシュレッドに変換される前です。これは、Heliusが提供する最低遅延のトランザクション信号であり、Shred Deliveryや処理済みコミットメントストリームよりも早いです。 WebSocketを通じてpreconfSubscribeメソッドでサブスクライブし、トランザクションが発生するたびに受信します。このストリームは、デフォルトで含まれる2つのソースを組み合わせ、2つの異なるパイプラインポイントで発信します。
- Heliusから転送されるバリデーターからのHelius事前確認。リーダーがトランザクションを実行した瞬間に、その実行ステータスとともに発信されます。結果がどこでも存在する最初の瞬間です。
- JitoのBlock Assembly Marketplace (BAM)クライアントを実行するバリデーターからの**BAM事前確認。バリデーターがトランザクションの実行をコミット**した時点で発信され、実行ステータスを持ちません。
事前確認はHeliusのGatekeeper
エンドポイントから提供されます、
wss://beta.helius-rpc.com。betaホスト名はGatekeeperの展開を指し、事前確認の成熟度ではありません。
トラフィックがGatekeeperに移行するにつれて標準的なエンドポイントになります。Lowest Latency
トランザクションは、shred および処理済みコミットメントのストリームより先に配信されます
WebSocket Streaming
preconfSubscribe で一度サブスクライブすると、Helius と BAM の
Preconfirmations を単一のストリームで受信できますCredit-Based Pricing
すべての有料プランで利用でき、配信メッセージごとに 10 クレジットです。メッセージがないスロットの料金は
0 で、メッセージがあるスロットにはサブスクリプションごとに最低 300 クレジットが課金されます
Built for Traders
propAMM、スナイパー、コピートレーダー、清算ボット向けに、オンチェーンアクティビティが確定する前に
対応できます
パイプライン内の事前確認の位置
トランザクションは、オンチェーンに上陸する前にバリデーター内でいくつかのステージを通過します。レイテンシーは左から右に増加します。右に行くほど、トランザクションについての情報が遅れます。
事前確認は、シュレッドと処理済みコミットメントストリームの前にトランザクションを配信します。
BAM事前確認
BAM (Block Assembly Marketplace) は、Solana用のJitoのブロックビルディングシステムです。BAM互換クライアントを実行しているバリデーターは、トランザクションの実行をコミットした瞬間に事前確認を発信します。HeliusはこれをJitoの地域BAMエンドポイントから受信し、Heliusの事前確認と同じpreconfSubscribeサブスクリプションとバイナリペイロードで提供します。ローンチ時点で、BAMはネットワークステークの34%以上のバリデーターからのカバレッジを追加しました。
BAM事前確認は同じペイロードレイアウトに従いますが、いくつかのフィールドで異なります。
tx_indexは常に0です。BAM はスロットインデックスではなく、シーケンス ID とバンドル内の位置に基づいてトランザクションを順序付けます。どちらも Helius のフィールドには対応せず、ストリームにも含まれません。2 つのソースを区別する方法を参照してください。regionIncludeは、それを取り込んだ Helius リージョンではなく、Preconfirmation を発行したリージョン別の BAM エンドポイントと一致します。- 一部のトランザクションは両方のソースを通じて Helius に到達するため、同じ署名が 2 回届くことがあります。重複通知を参照してください。
includeSource: ["helius"] または includeSource: ["bam"] を渡します。
事前確認を使用する場合
最適な適合
提案AMM、スナイパー、コピー トレーダー、清算ボット — トランザクションに可能な限り早く反応する必要がある戦略
代替案を検討
完全な履歴または確認済みのデータの場合は、LaserStream または
Enhanced WebSockets を使用してください。元のネットワーク
データの場合は、Shred Delivery を参照してください。
料金
Preconfirmations は、Developer、Business、Professional、Enterprise のすべての有料プランで利用できます。無料プランは対象外です。 Preconfirmations のカバレッジがあるスロットでも、配信メッセージが 0 件ならクレジットは消費されません。スロットで少なくとも 1 件のメッセージが配信された場合、開いている各preconfSubscribe サブスクリプションには、300 クレジットまたは配信メッセージ 1 件あたり 10 クレジットのうち、いずれか大きい方が課金されます。カバーされていないスロットの料金は 0 です。詳細はクレジットを参照してください。
スロットが課金対象になるかどうかは、そのリーダーがどのようにカバーされているかと、
includeSource の設定によって決まります。
regionInclude を使用すると、対象範囲がさらに絞り込まれます。選択したリージョン外のカバー対象スロットについては、そのサブスクリプションの料金は 0 です。一致するスロットは、サブスクリプションが少なくとも 1 件のメッセージを受信した場合にのみ課金されます。
同時に実行されている各サブスクリプションは、少なくとも 1 件のメッセージを受信した場合に個別に課金されます。不要になったサブスクリプションは preconfUnsubscribe で閉じてください。includeSource: ["helius"] を使用すると、BAM のみでカバーされているスロットは課金対象から除外されます。
Preconfirmations は新しい製品であり、料金は変更される場合があります。
カバレッジ
Preconfirmations は、ストリームを Helius に転送するか、BAM 互換クライアントを実行しているバリデーターによってスケジュールされたトランザクションでのみ利用できます。カバレッジは、この 2 つのソースがカバーするネットワークステークの割合に応じて変わるため、ストリームは連続していません。includeSource: ["helius"] を設定すると、カバレッジは Helius に直接転送するバリデーターに限定されます。
getPreConfCoverage を使用すると、Preconfirmations のカバレッジをネットワークステークに対する割合として取得し、リージョン別の内訳も確認できます。
Helius に転送するバリデーターが増えるにつれて、カバレッジも拡大します。バリデーターを運用している場合は、カバレッジの欠落を減らして収益を得ることができます。
バリデーター向け
バリデーターを運用していますか?Preconfirmations ストリームを Helius に転送することで収益を得られ、Preconfirmations を利用するすべてのユーザーのカバレッジ向上にも貢献できます。Validators: earn by sending Preconfirmations
Preconfirmations の転送を開始して収益を得る方法を確認します。
次のステップ
preconfSubscribe reference
サブスクライブ方法、メッセージ形式、完全な WebSocket の例を確認します。
Helius Sender
Preconfirmations と Sender を組み合わせ、確認した内容に対して最速で
ランディングするように対応できます。