Was ist LaserStream WebSocket?
LaserStream WebSocket ist die WebSocket-Protokollvariante von LaserStream. Es bedient die standardmäßigen Solana JSON-RPC-Abonnementmethoden (accountSubscribe, programSubscribe, logsSubscribe, signatureSubscribe, slotSubscribe, …) zusammen mit Helius-spezifischen Erweiterungen wie transactionSubscribe für erweitertes Filtern – alles an einem einheitlichen wss://mainnet.helius-rpc.com Endpunkt und auf demselben LaserStream-Backend wie das gRPC-Produkt.
WebSockets bieten eine persistente, Echtzeit-Verbindung: Anstatt wiederholt zu fragen “Hat sich etwas geändert?”, benachrichtigt Sie die Blockchain in dem Moment, in dem etwas passiert.
Echtzeit-Updates
Erhalten Sie sofortige Benachrichtigungen, wenn sich Solana-Konten ändern, Transaktionen stattfinden oder neue Blöcke produziert werden
Effiziente Ressourcennutzung
Eine persistente Verbindung anstelle von hunderten HTTP-Anfragen
Niedrige Latenz
Bis zu 200 ms schneller als standardmäßige Agave RPC-basierte WebSockets, bereitgestellt von LaserStream
Helius-Erweiterungen
transactionSubscribe und ein erweitertes accountSubscribe für fortgeschrittenes Filtern zusätzlich zu den Standard-Solana-MethodenEndpunkte
WebSockets – sowohl die standardmäßigen Solana-Methoden als auch die Helius-spezifischen Erweiterungen – werden von einem einzigen, einheitlichen Endpunkt pro Netzwerk bereitgestellt: Mainnet:wss://mainnet.helius-rpc.com/?api-key=<API_KEY>
Devnet: wss://devnet.helius-rpc.com/?api-key=<API_KEY>
Gatekeeper (Beta)
Um unser schnellstes WebSocket-Angebot zu testen, probieren Sie den neuen Gatekeeper (Beta) Endpunkt:wss://beta.helius-rpc.com/?api-key=<API_KEY>
Preisgestaltung & Zählung
Die Nutzung von WebSockets wird mit 2 Credits pro 0,1 MB unkomprimierter gestreamter Daten berechnet. Das Öffnen einer Verbindung kostet 1 Credit. Für hochvolumige Arbeitslasten in Professional-Plänen bieten Daten-Add-Ons monatliche Datenfreigaben (5TB–100TB) zu vorhersehbaren Kosten. Daten-Add-Ons können auf LaserStream und WebSockets angewendet werden.Die Helius-spezifischen Methoden
transactionSubscribe und accountSubscribe (mit Helius-Filtern) erfordern einen Developer, Business oder Professional Plan. Standard-Solana-Methoden wie programSubscribe, logsSubscribe und signatureSubscribe sind in allen Plänen verfügbar.Grundlegende Konzepte
Abonnementtypen
Konto-Abonnements
Konto-Abonnements
Überwachen Sie Änderungen an bestimmten Konten wie Wallet-Guthaben, Token-Konten oder Programmdaten.Anwendungsfälle:
- Wallet-Guthaben-Tracking
- Token-Kontenüberwachung
- Änderungen des Smart-Contract-Status
- Aktualisierungen der NFT-Eigentumsverhältnisse
Programm-Abonnements
Programm-Abonnements
Überwachen Sie alle Konten, die von einem bestimmten Programm verwaltet werden, auf Änderungen.Anwendungsfälle:
- Überwachung von DEX-Handel
- DeFi-Protokoll-Tracking
- Aktivität auf dem NFT-Marktplatz
- Änderungen von Spielressourcen
Transaktionsabonnements
Transaktionsabonnements
Erhalten Sie Benachrichtigungen, wenn bestimmte Transaktionen bestätigt werden oder wenn Transaktionen bestimmte Konten erwähnen.Anwendungsfälle:
- Zahlungseingangsbestätigungen
- Tracking des Transaktionsstatus
- Genehmigungen für Multisignatur
- Überwachung der Vertragserfüllung
Slot-Abonnements
Slot-Abonnements
Überwachen Sie die Blockchain-Entwicklung und Finalität auf Slot-Ebene.Anwendungsfälle:
- Anwendungen für Block-Explorer
- Netzwerk-Gesundheitsüberwachung
- Konsens-Tracking
- Leistungsanalysen
Commitment-Stufen
Das Verständnis der Commitment-Stufen ist entscheidend für zuverlässige Anwendungen:- Verarbeitet
- Bestätigt
- Finalisiert
Am schnellsten - Transaktion von einem Validator verarbeitet, aber nicht bestätigt
- Latenz: ~400ms
- Risiko: Kann verworfen oder neu geordnet werden
- Eignung: Echtzeit-UI-Updates (mit Vorsicht)
Möchten Sie mehr über Commitment-Stufen erfahren? Lesen Sie unseren umfassenden Blogbeitrag: Understanding Solana Commitment Levels
Verfügbare WebSocket-Methoden
Helius unterstützt das vollständige Set an Solana WebSocket-Abonnementmethoden sowie Helius-spezifische Erweiterungen. Alle Methoden teilen sich den gleichenwss://mainnet.helius-rpc.com Endpunkt.
Helius-Erweiterungen
Zwei Methoden bieten reichhaltigeres Filtern als der Solana-Standard:transactionSubscribe— abonnieren Sie Transaktionen, die in die/include/exclude/required Kontolisten passen, Abstimmungs-/Fehler-Flags und eine spezifische SignaturaccountSubscribe— Helius fügt fortgeschrittene Filter über dem StandardaccountSubscribeSchema hinzu
Standard Solana-Methoden
accountSubscribe, blockSubscribe, logsSubscribe, programSubscribe, rootSubscribe, signatureSubscribe, slotSubscribe, slotsUpdatesSubscribe, voteSubscribe und deren entsprechende *Unsubscribe Paare.
Vollständige API-Referenz
Erkunden Sie alle 18+ WebSocket-Methoden. Jede Methode beinhaltet detaillierte Parameter, Antwortformate und Beispiele.
Wie man Wiedereinbindungslogik implementiert
WebSocket-Verbindungen können aus verschiedenen Gründen unterbrochen werden - Netzwerkprobleme, Serverwartung oder temporäre Ausfälle. Produktionsanwendungen müssen Wiedereinbindungslogik implementieren, um Zuverlässigkeit zu gewährleisten.Warum Trennungen passieren
Netzwerkprobleme
Netzwerkprobleme
- Internetkonnektivitätsprobleme
- WiFi-Wechsel auf mobilen Geräten
- Timeouts der Unternehmensfirewall
- ISP-Routenänderungen
Serverseitige Ereignisse
Serverseitige Ereignisse
- Geplante Wartungsfenster
- Neustarts von Load Balancern
- RPC-Knoten-Updates
- Temporärer Überlastungsschutz
Clientseitige Probleme
Clientseitige Probleme
- Hintergrundsetzung von Browser-Tabs
- App-Inaktivität auf mobilen Geräten
- Computer-Schlafmodus/Hibernation
- Prozessabstürze oder Neustarts
Erkennen von Trennungen
- JavaScript/Browser
- Node.js
Wiedereinbindungsstrategien
- Exponentielles Backoff
- Circuit Breaker Muster
Testen der Wiedereinbindungslogik
- Netzwerksimulation
- Automatisierte Tests
Fehlersuche
Verbindung fehlgeschlagen
Verbindung fehlgeschlagen
Symptome: WebSocket schlägt bei der ersten Verbindung fehlLösungen:
- Überprüfen Sie, ob Ihr API-Schlüssel korrekt ist und ausreichende Credits hat
- Überprüfen Sie das Endpunkt-URL-Format:
wss://mainnet.helius-rpc.com?api-key=YOUR_KEY - Stellen Sie sicher, dass Ihre Firewall WebSocket-Verbindungen auf Port 443 zulässt
- Testen Sie zuerst mit einem einfachen Ping, um die grundlegende Konnektivität zu überprüfen
Häufige Trennungen
Häufige Trennungen
Symptome: Verbindung bricht alle paar Minuten abLösungen:
- WebSockets haben einen 10-Minuten-Inaktivitäts-Timer. Senden Sie mindestens einmal pro Minute einen Ping, um die Verbindung aktiv zu halten (siehe die Wiedereinbindungsbeispiele oben und die WebSocket-FAQ)
- Implementieren Sie einen ordnungsgemäßen Ping/Pong-Heartbeat (wie in den Wiedereinbindungsbeispielen oben gezeigt)
- Überprüfen Sie die Stabilität Ihres Netzwerks und die Einstellungen Ihrer Unternehmensfirewall
- Überwachen Sie Ihre Abonnementanzahl - zu viele können Instabilität verursachen
- Vergewissern Sie sich, dass Sie den Lebenszyklus der Verbindung richtig verwalten
Fehlende Nachrichten
Fehlende Nachrichten
Symptome: Nicht empfangene erwartete AbonnementaktualisierungenLösungen:
- Überprüfen Sie, ob Ihr Abonnement bestätigt ist (prüfen Sie die Antwort)
- Stellen Sie sicher, dass das Konto/Programm, das Sie überwachen, tatsächlich aktiv ist
- Überwachen Sie Ihren Verbindungsstatus - fehlende Nachrichten weisen oft auf Trennungen hin
Hohe Latenz
Hohe Latenz
Symptome: Langsame Nachrichtenübermittlung, Verzögerungen bei AktualisierungenLösungen:
- Verwenden Sie “bestätigt” anstelle von “finalisiert” bei der Commitment
- Reduzieren Sie die Anzahl der aktiven Abonnements
- Optimieren Sie Ihre Nachrichtenverarbeitungslogik
- Erwägen Sie die Verwendung mehrerer Verbindungen zur Lastverteilung
- Überprüfen Sie die Qualität Ihrer Netzwerkverbindung
Speicherlecks
Speicherlecks
Symptome: Speicherverbrauch der Anwendung wächst im Laufe der ZeitLösungen:
- Implementieren Sie eine ordnungsgemäße Abonnementbereinigung
- Entfernen Sie Event-Listener, wenn Komponenten demontiert werden
- Löschen Sie Nachrichtenprotokolle regelmäßig
- Überwachen Sie die Abonnementanzahl und setzen Sie Grenzen durch
- Verwenden Sie, wo möglich, schwache Referenzen für Rückruffunktionen
Migration vom Standard-RPC
Wenn Sie derzeit HTTP-Polling verwenden, erfahren Sie hier, wie Sie zu WebSockets migrieren können:Erweiterte Fähigkeiten
Für Apps, die noch fortschrittlichere Funktionen erfordern, sollten Sie LaserStream gRPC in Betracht ziehen:24-Stunden-historische Wiedergabe
Verpasste Daten nachholen, wenn Ihre App offline war
Aggregation von mehreren Knoten
Bessere Zuverlässigkeit durch Daten von mehreren Validatoren
Höherer Durchsatz
Mehr Abonnements und höhere Nachrichtenraten handhaben
Unternehmensfunktionen
Fortgeschrittene Überwachung, Analysen und Datenpipelines