Skip to main content
Die getEpochSchedule RPC-Methode gibt die Epoch-Zeitplaninformationen aus der Genesis-Konfiguration des Clusters zurück. Diese Daten definieren, wie Epochen strukturiert sind, einschließlich ihrer Länge und wie der Führungszeitplan relativ zum Beginn einer Epoche bestimmt wird. Das Verständnis des Epoch-Zeitplans ist entscheidend für Anwendungen, die sich mit Netzwerkereignissen abstimmen, Epochengrenzen vorhersagen oder den Führungsrotationsmechanismus verstehen müssen.

Häufige Anwendungsfälle

  • Vorhersage von Epochengrenzen: Bestimmen Sie die Anzahl der Slots in einer Epoche, um abzuschätzen, wann die aktuelle Epoche endet und die nächste beginnt.
  • Berechnung des Führungszeitplans: Verstehen Sie den leaderScheduleSlotOffset, um zu wissen, wie weit im Voraus Führungszeitpläne für eine kommende Epoche erstellt werden.
  • Analyse der Netzwerk-Initialisierung: Beobachten Sie warmup, firstNormalEpoch und firstNormalSlot, um die anfängliche Aufwärmphase der Epoche im Cluster zu verstehen, falls zutreffend.
  • Entwicklung von Netzwerkanalysetools: Verwenden Sie diese Informationen, um die Epoch-Zeit und den Fortschritt genau anzuzeigen.

Anfrageparameter

Diese Methode benötigt keine Parameter.

Antwortstruktur

Das result-Feld der JSON-RPC-Antwort wird ein Objekt enthalten, das die folgenden Felder aufweist:
  • slotsPerEpoch (u64): Die maximale Anzahl von Slots in jeder Epoche (nach der Aufwärmphase, falls vorhanden).
  • leaderScheduleSlotOffset (u64): Die Anzahl der Slots vor dem Beginn einer Epoche, für die der Führungszeitplan für diese Epoche erstellt wird.
  • warmup (boolean): Ein boolescher Wert, der angibt, ob der Cluster eine Aufwärmphase hat, in der Epochen kürzer beginnen und allmählich länger werden.
  • firstNormalEpoch (u64): Die erste Epochenzahl, die die volle slotsPerEpoch-Länge hat. Dies ist relevant, wenn warmup wahr ist.
  • firstNormalSlot (u64): Der Slot-Index des ersten Slots in der firstNormalEpoch. Dies ist relevant, wenn warmup wahr ist.

Beispiele

1. Abrufen des Epoch-Zeitplans für den Cluster

Dieses Beispiel ruft den Epoch-Zeitplan ab.

Entwicklertipps

  • Statische Informationen: Der Epoch-Zeitplan wird durch die Genesis-Konfiguration des Clusters bestimmt und ändert sich im Allgemeinen nicht, es sei denn, es gibt ein signifikantes Netzwerk-Upgrade oder einen neuen Cluster-Start mit anderen Parametern.
  • Mainnet vs. Testnet/Devnet: Der Epoch-Zeitplan, insbesondere slotsPerEpoch und Aufwärmparameter, kann zwischen Mainnet Beta, Testnet und Devnet erheblich variieren. Fragen Sie immer den spezifischen Cluster ab, an dem Sie interessiert sind.
  • Aufwärmphase: Wenn warmup true ist, haben Epochen vor firstNormalEpoch weniger Slots als slotsPerEpoch. Die genaue Berechnung für Aufwärmeposchenlängen ist 2^N * MINIMUM_SLOTS_PER_EPOCH, wobei N die Epochennummer ist (beginnend bei 0), bis firstNormalEpoch erreicht ist. Der MINIMUM_SLOTS_PER_EPOCH beträgt typischerweise 32.
Dieser Leitfaden bietet die notwendigen Informationen zur Verwendung der getEpochSchedule RPC-Methode, um das grundlegende Timing und die Struktur von Epochen innerhalb eines Solana-Clusters zu verstehen.