Zum Hauptinhalt springen
Durch die Optimierung der RPC-Nutzung kannst du die Performance deutlich steigern, Kosten senken und die Benutzererfahrung verbessern. Dieser Leitfaden beschreibt bewährte Techniken für effiziente Interaktionen mit Solana RPC.

Schnellstart

Transaction Optimization

Optimiere Compute Units, Priority Fees und das Senden von Transaktionen

Data Retrieval

Effiziente Muster zum Abrufen von Account- und Programmdaten

Real-time Monitoring

Optimiere WebSocket-Abonnements und Streaming-Daten

Best Practices

Richtlinien für Performance und Ressourcenverwaltung

Transaktionsoptimierung

Compute Units verwalten

1. Simuliere die Transaktion, um die tatsächliche Nutzung zu ermitteln:
2. Lege passende Limits mit Puffer fest:

Priority Fees optimieren

1. Rufe dynamische Gebührenschätzungen ab:
2. Wende die Priority Fee an:

Best Practices zum Senden von Transaktionen

Datenabruf optimieren

Erweiterte Paginierungsmethoden (V2)

Verwende für umfangreiche Datenabfragen die neuen V2-Methoden mit cursorbasierter Paginierung:

⚡ Performance Boost

getProgramAccountsV2 und getTokenAccountsByOwnerV2 verbessern die Performance von Anwendungen, die große Datensätze verarbeiten, erheblich:
  • Konfigurierbare Limits: 1–10.000 Accounts pro request
  • Cursorbasierte Paginierung: Verhindert Timeouts bei großen Abfragen
  • Inkrementelle Aktualisierungen: Verwende changedSinceSlot für die Echtzeitsynchronisierung
  • Effizientere Speichernutzung: Streame Daten, statt alles auf einmal zu laden
Beispiel: Effiziente Abfrage von Programm-Accounts
Inkrementelle Aktualisierungen für Echtzeitanwendungen:

Datenabruf optimieren

Effiziente Account-Abfragen

Token-Guthaben abfragen

Transaktionsverlauf

Verwende für den vollständigen Verlauf einer Adresse getTransactionsForAddress. Diese exklusive Helius-Methode gibt mit einem einzigen Aufruf vollständige Transaktionsdaten zurück, einschließlich der Aktivitäten zugehöriger Token-Accounts:

Übertragungsverlauf

Wenn du nur Bewegungen von Token oder SOL benötigst – etwa für Zahlungen, Portfolioaktivitäten oder den Kontenabgleich –, verwende getTransfersByAddress. Diese exklusive Helius-Methode erfordert mindestens einen Developer-Tarif. Sie gibt geparste, lesbare Übertragungsobjekte zurück, in denen Eigentümer, Mints, Beträge und Dezimalstellen bereits aufgelöst sind. Dadurch entfällt das Parsen von Transaktionen vollständig:
Faustregel: Verwende getTransactionsForAddress, wenn du vollständige Transaktions-Payloads oder Aktivitäten ohne Übertragungen benötigst. Verwende getTransfersByAddress, wenn du übersichtliche Übertragungsdatensätze für Hauptbücher und die Zahlungsverfolgung benötigst.

Echtzeitüberwachung

Account-Abonnements

Programm-Accounts überwachen

Transaktionen überwachen

Fortgeschrittene Muster

Intelligente Wiederholungslogik

Speichereffiziente Verarbeitung

Connection-Pooling

Performance überwachen

RPC-Nutzung erfassen

Best Practices

Commitment-Stufen

  • Verwenden für: WebSocket-Abonnements, Echtzeitaktualisierungen
  • Latenz: ~400 ms
  • Zuverlässigkeit: Für die meisten Anwendungen geeignet

Ressourcenverwaltung

Fehlerbehandlung

Häufige Fehler vermeiden

Vermeide diese häufigen Fehler:
  • Polling statt WebSocket-Abonnements verwenden
  • Vollständige Account-Daten abrufen, obwohl nur ein Teil benötigt wird
  • Mehrere Abfragen nicht als Batch ausführen
  • Rate Limits ignorieren und keine geeignete Wiederholungslogik implementieren
  • Commitment finalized verwenden, obwohl confirmed ausreicht
  • Abonnements nicht schließen und dadurch Speicherlecks verursachen

Verwandte Methoden

Die Optimierungstechniken in diesem Leitfaden beziehen sich auf die folgenden WebSocket- und RPC-Methoden:

getTransactionsForAddress

Vollständiger Transaktionsverlauf mit Filterung, Sortierung und Unterstützung für Token-Accounts (exklusiv bei Helius)

getTransfersByAddress

Geparster Verlauf von Token- und SOL-Übertragungen für Zahlungen und Abgleiche (exklusiv bei Helius)

getTransaction

Vollständige Transaktionsdetails anhand der Signatur abrufen

getProgramAccounts

Alle Accounts abrufen, die einem Programm gehören

getTokenAccountsByOwner

Token-Accounts für eine Wallet abrufen

getMultipleAccountsInfo

Details mehrerer Accounts als Batch abrufen

getAccountInfo

Informationen zu einem einzelnen Account abrufen

accountSubscribe

Account-Änderungen über WebSocket abonnieren

programSubscribe

Änderungen an Programm-Accounts über WebSocket abonnieren

logsSubscribe

Transaktionsprotokolle über WebSocket abonnieren

Zusammenfassung

Mit diesen Optimierungstechniken kannst du Folgendes erreichen:
  • 60–90 % weniger API-Aufrufe
  • Deutlich geringere Latenz bei Echtzeitvorgängen
  • Geringere Bandbreitennutzung durch gezielte Abfragen
  • Höhere Fehlertoleranz durch intelligente Wiederholungslogik
  • Niedrigere Betriebskosten durch effiziente Ressourcennutzung

Next Steps

Möchtest du diese Optimierungen implementieren? In unserem Leitfaden zur Transaktionsoptimierung findest du transaktionsspezifische Best Practices.