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,firstNormalEpochundfirstNormalSlot, 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
Dasresult-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 volleslotsPerEpoch-Länge hat. Dies ist relevant, wennwarmupwahr ist.firstNormalSlot(u64): Der Slot-Index des ersten Slots in derfirstNormalEpoch. Dies ist relevant, wennwarmupwahr 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
slotsPerEpochund 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
warmuptrueist, haben Epochen vorfirstNormalEpochweniger Slots alsslotsPerEpoch. Die genaue Berechnung für Aufwärmeposchenlängen ist2^N * MINIMUM_SLOTS_PER_EPOCH, wobei N die Epochennummer ist (beginnend bei 0), bisfirstNormalEpocherreicht ist. DerMINIMUM_SLOTS_PER_EPOCHbeträgt typischerweise 32.
getEpochSchedule RPC-Methode, um das grundlegende Timing und die Struktur von Epochen innerhalb eines Solana-Clusters zu verstehen.