Übersicht
Vorverarbeitete Transaktionen sind Solana-Transaktionen vor der Ausführung, die bereitgestellt werden, bevor sie das Commitment-Levelprocessed erreichen. Helius führt mehrere Quellen vor der Ausführung zusammen – hauptsächlich Shreds, die direkt beim Eintreffen am Validator decodiert werden, ergänzt durch Preconfirmation-Signale. Du erhältst sie als einen einzigen deduplizierten stream, ohne rohe Shred-Pakete empfangen oder selbst eine Infrastruktur für Deshredding betreiben zu müssen.
Transaktionen aus Preconfirmation-Signalen treffen in diesem Feed später ein als im dedizierten Produkt Preconfirmations. Dort erhältst du weiterhin den frühesten Zugriff auf sie.
Du empfängst vorverarbeitete Transaktionen über die WebSocket-Methode preprocessedSubscribe (Public Beta). Sie ist in allen kostenpflichtigen Tarifen für 0,1 Credits pro Nachricht verfügbar.
preprocessedSubscribe (WSS)
Die empfohlene Methode zum Empfangen vorverarbeiteter Transaktionen: Kontofilterung, kompaktes binäres payload und Verfügbarkeit in allen kostenpflichtigen Tarifen.
Position vorverarbeiteter Transaktionen im Lebenszyklus
In der Solana-Architektur durchlaufen Transaktionen mehrere Phasen, bevor sie vollständig verarbeitet sind:- Empfang der Shreds → Der Validator empfängt die Shreds der Transaktion (Datenfragmente). ← Rohe Shreds (UDP) werden hier bereitgestellt.
- Decodieren der Shreds → Shreds werden in rohe Transaktionen decodiert. ← Vorverarbeitete Transaktionen werden hauptsächlich hier bereitgestellt.
- Ausführung der Transaktion → Die Runtime führt die Transaktion aus.
- Erzeugung der Metadaten → Salden vor und nach der Ausführung, Logs und Fehlerinformationen werden berechnet.
- Commitment → Die Transaktion erreicht den Status processed, confirmed oder finalized. ← LaserStream gRPC und LaserStream WebSocket stellen sie hier bereit.
Welche Daten sind verfügbar?
Vorverarbeitete Transaktionen enthalten die vollständige signierte Transaktion, aber keine Ausführungsmetadaten:Verfügbare Daten
- ✅ Transaktionssignatur - Eindeutige Kennung der Transaktion
- ✅ Kontoschlüssel - Alle Konten, auf die die Transaktion verweist
- ✅ Anweisungen - Vollständige Anweisungsdaten und Programmaufrufe
- ✅ Aktueller Blockhash - Referenz für den Ablauf der Transaktion
- ✅ Signaturen - Alle Signaturen der Transaktion
- ✅ Nummer des slot - Der slot, in dem die Transaktion beobachtet wurde
Fehlende Daten
- ❌ Transaktionsmetadaten - Änderungen von Token-Salden, Salden vor und nach der Ausführung, Transaktionsstatus
- ❌ Transaktionsfehler - Wir können nicht feststellen, ob die Transaktion fehlgeschlagen ist
- ❌ Innere Anweisungen - Programmübergreifende Aufrufe (CPIs) sind nicht enthalten
- ❌ Log-Nachrichten - Programm-Logs werden während der Ausführung erzeugt
- ❌ Verbrauchte Compute Units - Ausführungsmetriken sind nicht verfügbar
Zustellgarantien
Die Zustellung erfolgt nach bestem Bemühen, ist nicht garantiert und bietet keine historische Wiedergabe. Eine übertragene Transaktion ist ein Signal vor der Ausführung und kein Commitment-Level. Sie kann fehlschlagen, verworfen werden oder auf einem anderen Fork landen. Dedupliziere anhand der Signatur und gleiche die Daten mit einem processed oder confirmed stream ab, wenn die Ausführungsergebnisse relevant sind. Verwende für kritische Anwendungen, die eine garantierte Zustellung und vollständige Daten benötigen, stattdessen LaserStream gRPC.Wann du vorverarbeitete Transaktionen verwenden solltest
Für latenzkritische Anwendungen, die decodierte Transaktionen vor der Ausführung benötigen, ohne einen Decoder für Shreds zu betreiben:- propAMMs
- Sniper
- Copy-Trader
- Liquidations-Bots
- Arbitrage
Preise
preprocessedSubscribe ist in allen kostenpflichtigen Tarifen verfügbar und kostet 0,1 Credits pro Nachricht – eine Nachricht pro zugestellter Transaktion. Weitere Informationen findest du unter Credits.
Häufig gestellte Fragen
Can you update preprocessed subscription filters live?
Can you update preprocessed subscription filters live?
Nein, der Filter wird durch den ursprünglichen
preprocessedSubscribe festgelegt. Um eine Unterbrechung zu vermeiden, empfehlen wir, eine zweite Verbindung mit dem neuen Filter zu öffnen, auf die Bestätigung des Abonnements zu warten und deinen Dienst dann auf den neuen Filter umzustellen.Is the preprocessedSubscribe concurrent subscription limit per API key or account?
Is the preprocessedSubscribe concurrent subscription limit per API key or account?
Das Limit von 10 gleichzeitigen Verbindungen gilt pro API key. Jeder API key in einem Projekt hat ein eigenes Limit von 10 Verbindungen.
Nächste Schritte
Subscribe with preprocessedSubscribe
Endpoint, Kontofilterung, Aufbau des binären payload und Codebeispiele.
Preconfirmations
Transaktionen, die bereitgestellt werden, bevor sie zu Shreds werden – das früheste Transaktionssignal.
Raw Shreds (UDP)
Unverarbeitete Shred-Pakete über UDP. Du implementierst das Deshredding.
Helius Sender
Reagiere mit der schnellsten Aufnahme von Transaktionen auf das, was du siehst.