Übersicht
Solana gRPC (Yellowstone-kompatibles Geyser gRPC) ist ein leistungsstarkes Solana-Geyser-Plugin, das das Streaming von Blockchain-Daten in Echtzeit über gRPC-Schnittstellen ermöglicht. Es ist ein leistungsstarkes Werkzeug für Entwickler, die Folgendes benötigen:
- Blockchain-Daten in Echtzeit streamen
- Überwachung der Aktivitäten auf der Blockchain (Token-Prägungen, Programminteraktionen, Zustandsänderungen)
- Kontostände effizient abfragen
- Transaktionen mit minimaler Latenz verfolgen
Solana gRPC erweitert die Geyser-Infrastruktur von Solana durch die Unterstützung sowohl des gRPC- als auch des JSON-RPC-Protokolls und bietet dabei Zuverlässigkeit auf Unternehmensniveau mit detaillierten Einstellungsmöglichkeiten.
Zugang
Solana gRPC ist in den Tarifen „Scale“ und „Business“ enthalten. In den Tarifen „Build“ und „Accelerate“ ist es weiterhin über das Solana gRPC-Add-on verfügbar.
Konfiguration von Endpunkten und Tokens
Solana gRPC läuft auf Port 10000. Dabei handelt es sich um einen dedizierten, sicheren Port für die gRPC-Kommunikation, der vom Standard-RPC-Endpunkt von Solana getrennt ist. Bei der Verbindung mit dem Dienst muss der Port in der URL angegeben werden:
- Endpunkt: Der Name Ihres gRPC-fähigen Endpunkts (standardmäßig bestehen drei zufällig generierte Wörter), gefolgt von
.solana-mainnet.quiknode.pround die Portnummer10000(z. B.https://example-guide-demo.solana-mainnet.quiknode.pro:10000) - Token: Die alphanumerische Zeichenfolge, die in der URL auf den Endpunktnamen folgt (weitere Token können über das Quicknode-Dashboard auf der Registerkarte „Endpunkt-Sicherheit“ generiert werden).
Angenommen, die URL des HTTP-Anbieters lautet wie im folgenden Beispiel: https://example-guide-demo.solana-mainnet.quiknode.pro/123456789/, Ihre Anmeldedaten wären dann:
- Endpunkt:
https://example-guide-demo.solana-mainnet.quiknode.pro:10000 - Token:
123456789
Hier ist ein Beispiel für die Verwendung dieses Endpunkts zur Verbindung mit TypeScript:
import { Client } from '@rpcpool/yellowstone-grpc';
// For HTTP Provider URL: https://example-guide-demo.solana-mainnet.quiknode.pro/123456789/
const ENDPOINT = 'https://example-guide-demo.solana-mainnet.quiknode.pro:10000';
const TOKEN = '123456789';
const client = new Client(ENDPOINT, TOKEN, {});
zstd-Komprimierung
Solana gRPC unterstützt die zstd-Komprimierung für schnellere gRPC-Anfragen. Informationen dazu, wie Sie die zstd-Komprimierung aktivieren können, finden Sie in der Dokumentation zur zstd-Komprimierung.
Solana-gRPC-Anfragen erstellen
Um mit verschiedenen Sprachen Anfragen an Solana gRPC zu stellen, sehen Sie sich die folgenden Ressourcen an:
Komprimierte Filter (Kuckucksfilter)
Standardabonnements unterliegen Beschränkungen hinsichtlich der Anzahl der öffentlichen Schlüssel pro Filter (10–50, je nach Tarif). Komprimierte Filter kodieren öffentliche Schlüssel in eine Cuckoo-Filter-Datenstruktur und umgehen so diese Beschränkungen. Einzelheiten zur Implementierung finden Sie in der Dokumentation zu komprimierten Filtern.
Ressourcen
- Anleitung: Solana-Programme mit Solana gRPC (Rust) überwachen
- Anleitung: Überwachung von Solana-Liquiditätspools mit Solana gRPC (Go)
- Anleitung: Solana-Programme mit Solana gRPC überwachen (TypeScript)
- Solana-Dokumentation: Geyser-Plugins für Solana-Validatoren
- GitHub: Yellowstone-Geyser-gRPC-Plugin
- GitHub: Geyser Park – Inoffizielle Liste der Geyser-Plugins
Wir ❤️ Feedback!
Wenn Sie Anregungen oder Fragen zu dieser Dokumentation haben, teilen Sie uns diese bitte mit. Wir freuen uns auf Ihre Rückmeldung!