Leader-Slot-Informations-API Dokumentation
Was ist die Leader-Slot-Information (getLeaderSlots) API?
getLeaderSlots ist eine erweiterte Solana-RPC-Methode, die kommende Leader-Slot-Daten mit Validator-Identität, Stake-Gewicht, Netzwerk-Endpunkt-Metadaten, geschätzter Leader-Position und Referenz-Latenzmessungen zurückgibt. Wenn Sie ERPC-Nutzungsrechte (API-Tokens) haben, können Sie die Methode im selben Format wie eine Standard-Solana-RPC-Methode aufrufen.Diese API bietet:
- Leader-Validator-Zeitplan ab dem gewünschten Slot
stakeWeightfür jeden Leader-Validator- Geschätzte Leader-Region, Stadt, Land, Koordinaten, ASN-Organisation und Zeitzone
- Referenzmessungen aus ERPC-Beobachtungsregionen über
pingToLeaders
Endpunkt- und Anforderungskörperbeispiel
text
https://edge.erpc.global?api-key=<YOUR_API_KEY>https://edge.erpc.global?api-key=<YOUR_API_KEY>Geben Sie die Startnummer in
params.json
{
"jsonrpc": "2.0",
"id": 1,
"method": "getLeaderSlots",
"params": [416462031]
}{
"jsonrpc": "2.0",
"id": 1,
"method": "getLeaderSlots",
"params": [416462031]
}Beispiel (HTTP)
bash
curl 'https://edge.erpc.global?api-key=<YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
"jsonrpc":"2.0",
"id":1,
"method":"getLeaderSlots",
"params":[416462031]
}'curl 'https://edge.erpc.global?api-key=<YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
"jsonrpc":"2.0",
"id":1,
"method":"getLeaderSlots",
"params":[416462031]
}'Beispiel Antwort (JSON)
Die aktuelle Antwort kapselt Datensätze in
result.data[]. result.total zeigt, wie viele Datensätze zurückgegeben wurden.json
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"success": true,
"message": "Leader schedule records retrieved successfully",
"total": 100,
"data": [
{
"identity": "BSVckjdW2f8kcXPGcrPPtV9kUDBZ8w8PjrrGVnxgEdwq",
"epoch": 964,
"slot": "416462031",
"stakeWeight": 2502391.138720913,
"ipAddress": "5.199.172.175",
"gossipPort": 12000,
"tpuPort": 12003,
"tpuQuicPort": 12009,
"rpcAddress": null,
"version": "3.1.13",
"featureSet": "534737035",
"leaderRegion": "stockholm",
"leaderCity": "Šiauliai",
"leaderCountry": "LT",
"leaderLat": 55.93333,
"leaderLon": 23.31667,
"leaderOrg": "AS16125 UAB Cherry Servers",
"leaderTimezone": "Europe/Vilnius",
"pingToLeaders": [
{
"city": "Frankfurt am Main",
"region": "frankfurt",
"ms": 27.742,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin"
}
]
},
{
"identity": "2oHUYyW2PU9VJh4XBs5TbGgzdernunvGqyKth3kxW4ns",
"epoch": 964,
"slot": "416462032",
"stakeWeight": 280745.689124988,
"ipAddress": "64.130.43.229",
"gossipPort": 8001,
"tpuPort": 5004,
"tpuQuicPort": 5010,
"rpcAddress": null,
"version": "3.1.13",
"featureSet": "534737035",
"leaderRegion": "amsterdam",
"leaderCity": "Amsterdam",
"leaderCountry": "NL",
"leaderLat": 52.37403,
"leaderLon": 4.88969,
"leaderOrg": "AS20326 TeraSwitch Networks Inc.",
"leaderTimezone": "Europe/Amsterdam",
"pingToLeaders": [
{
"city": "Frankfurt am Main",
"region": "frankfurt",
"ms": 16.835,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin"
}
]
},
{
"identity": "JupmVLmA8RoyTUbTMMuTtoPWHEiNQobxgTeGTrPNkzT",
"epoch": 964,
"slot": "416462036",
"stakeWeight": 12254651.761860535,
"ipAddress": "64.130.41.46",
"gossipPort": 8000,
"tpuPort": 9001,
"tpuQuicPort": 9007,
"rpcAddress": null,
"version": "3.1.13",
"featureSet": "534737035",
"leaderRegion": "frankfurt",
"leaderCity": "Frankfurt am Main",
"leaderCountry": "DE",
"leaderLat": 50.1924,
"leaderLon": 8.6753,
"leaderOrg": "AS20326 TeraSwitch Networks Inc.",
"leaderTimezone": "Europe/Berlin",
"pingToLeaders": [
{
"city": "Frankfurt am Main",
"region": "frankfurt",
"ms": 0.974,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin"
}
]
}
]
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"success": true,
"message": "Leader schedule records retrieved successfully",
"total": 100,
"data": [
{
"identity": "BSVckjdW2f8kcXPGcrPPtV9kUDBZ8w8PjrrGVnxgEdwq",
"epoch": 964,
"slot": "416462031",
"stakeWeight": 2502391.138720913,
"ipAddress": "5.199.172.175",
"gossipPort": 12000,
"tpuPort": 12003,
"tpuQuicPort": 12009,
"rpcAddress": null,
"version": "3.1.13",
"featureSet": "534737035",
"leaderRegion": "stockholm",
"leaderCity": "Šiauliai",
"leaderCountry": "LT",
"leaderLat": 55.93333,
"leaderLon": 23.31667,
"leaderOrg": "AS16125 UAB Cherry Servers",
"leaderTimezone": "Europe/Vilnius",
"pingToLeaders": [
{
"city": "Frankfurt am Main",
"region": "frankfurt",
"ms": 27.742,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin"
}
]
},
{
"identity": "2oHUYyW2PU9VJh4XBs5TbGgzdernunvGqyKth3kxW4ns",
"epoch": 964,
"slot": "416462032",
"stakeWeight": 280745.689124988,
"ipAddress": "64.130.43.229",
"gossipPort": 8001,
"tpuPort": 5004,
"tpuQuicPort": 5010,
"rpcAddress": null,
"version": "3.1.13",
"featureSet": "534737035",
"leaderRegion": "amsterdam",
"leaderCity": "Amsterdam",
"leaderCountry": "NL",
"leaderLat": 52.37403,
"leaderLon": 4.88969,
"leaderOrg": "AS20326 TeraSwitch Networks Inc.",
"leaderTimezone": "Europe/Amsterdam",
"pingToLeaders": [
{
"city": "Frankfurt am Main",
"region": "frankfurt",
"ms": 16.835,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin"
}
]
},
{
"identity": "JupmVLmA8RoyTUbTMMuTtoPWHEiNQobxgTeGTrPNkzT",
"epoch": 964,
"slot": "416462036",
"stakeWeight": 12254651.761860535,
"ipAddress": "64.130.41.46",
"gossipPort": 8000,
"tpuPort": 9001,
"tpuQuicPort": 9007,
"rpcAddress": null,
"version": "3.1.13",
"featureSet": "534737035",
"leaderRegion": "frankfurt",
"leaderCity": "Frankfurt am Main",
"leaderCountry": "DE",
"leaderLat": 50.1924,
"leaderLon": 8.6753,
"leaderOrg": "AS20326 TeraSwitch Networks Inc.",
"leaderTimezone": "Europe/Berlin",
"pingToLeaders": [
{
"city": "Frankfurt am Main",
"region": "frankfurt",
"ms": 0.974,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin"
}
]
}
]
}
}Antwortfelder
| Feld | Bedeutung |
|---|---|
result.success | Ob die Anfrage erfolgreich war. |
result.message | Menschlich lesbare Statusmeldung. |
result.total | Anzahl der zurückgegebenen Ranglisten. Die API gibt derzeit 100 Datensätze pro Anfrage zurück. |
result.data[] | Bestellte führende Slot-Aufzeichnungen beginnend mit dem gewünschten Slot. |
identity | Leader Validator Identität öffentlicher Schlüssel. |
epoch | Solana Epoche mit dem Slot. |
slot | Slot-Nummer. Es wird als String zurückgegeben, so dass Kunden keine JSON-Nummer annehmen sollten. |
stakeWeight | Stake delegiert an den Leader-Validator. Höhere Beteiligung bedeutet im Allgemeinen, dass der Validatoren im Laufe der Zeit häufiger in Führungsplänen erscheint. |
leaderRegion | Normalisiertes Betriebsgebietslabel für Routing und Analyse. Es kann in der Nähe Städte oder Anbieter-Standorte. |
leaderCity, leaderCountry, leaderLat, leaderLon, leaderOrg, leaderTimezone | Geschätzte Geolokation und Netzwerkorganisation für den führenden Validierungsleiter. |
pingToLeaders[] | Referenzlatenz von ERPC Beobachtungsregionen an den Leader, einschließlich Region, Stadt, ms, aus Ip, Land, Koordinaten, ASN Organisation, Postleitzahl und Zeitzone. |
Visualisierung von Leader-Slots
Die gleiche Antwort kann als schlitzweise Betriebszeitleiste betrachtet werden. Dieses Beispiel nutzt Frankfurt als Beobachtungspunkt.
| Slot-Fenster | Leader-Region | Standort | Stake-Gewicht | Ping aus Frankfurt | Operationelles Lesen |
|---|---|---|---|---|---|
| 416462031 | auf Anfrage | Šiauliai, LT | 2.502,391.14 | 27.742 ms | Eine vernünftige europäische Latenz, aber nicht dieselbe Metro. |
| 416462032-416462035 | Amsterdam | Amsterdam, NL | 280.745.69 | 16.835 ms | Geringes europäisches Fenster. Amsterdam kann nützlich sein. |
| 416462036 | Frankfurt | Frankfurt am Main | 12.254,651.76 | 0.974 ms | Gleiche Region führend. Frankfurt-Ressourcen werden für diesen Slot stark begünstigt. |
Diese Ansicht ist nützlich, weil Solana global ist. Im Gegensatz zu herkömmlichen HFT, wo das Hauptziel ist oft in der Nähe eines passenden Motors zu sitzen, rotieren Solana-Leader über die Validatoren auf der ganzen Welt. Die schnellste Region ändert sich, wenn sich der Zeitplan ändert.
Solana Network Data Website
Für eine öffentliche Sicht der Validierungs- und Netzwerkverteilung verwenden Lösungen für die Validierung. Verwenden Sie es, um das breitere Solana-Netzwerk zu verstehen, dann verwenden
getLeaderSlots für den Slot-Level Zeitplan, Stake-Gewicht, Validierungsort und gemessene Latenzdaten, die für die operative Routing benötigt werden.Token Nutzung
Die API ruft 100 führende Slot-Aufzeichnungen ab dem angegebenen Slot ab. Jede Anfrage verbraucht 420 Token.
Warum Leader-Slot-Information Mattes
- Wenn der Leader geographisch oder netzseitig entfernt ist, wird die direkte Transaktionslieferung ineffizient.
- Stake-Gewicht hilft schätzen, wie oft ein Validator im Laufe der Zeit im Leader-Zeitplan erscheinen wird.
- Während der globalen Spitzenübergänge sind regionale Schaltstrategien wichtiger als eine einzige globale durchschnittliche Latenz.
- Die Kombination von Slot-Plan, Stakegewicht, Leader-Standort und gemessenen Ping-Daten ermöglicht eine optimierte Routing und Validierungsplatzierung.
Hintergrund
Eine einzelne Solana-Epoche besteht aus rund 432.000 Slots. Die fortlaufende Erfassung von Leader-Zeitplänen, Validierungsmetadaten, Geolokation und Latenzmessungen erfordert eine dedizierte Datenpipeline. ERPC hält diese Daten aufrecht und stellt sie als sofort nutzbare Leader-Slot-Karte über die RPC-Schnittstelle aus.
Strategische Anwendungsfälle
- Erkennungsoptimierung: priorisieren Sie nahe gelegene, flache Führungsfenster.
- Multi-Regionen-Bereitstellung: Bereitstellung in FRA, AMS, NY, TY, SGP und anderen strategischen Regionen, um Übergangslücken zu reduzieren.
- Stake-aware-Planung: Verwendung
stakeWeightzu verstehen, welche Leader häufiger über längere Fenster ausfallen. - Visualisierung und Analyse: Überwachung von Leader-Verhältnissen, Stake-Verteilung und Latenzverteilung nach Regionen.
Verfügbarkeit
getLeaderSlots steht allen ERPC-Benutzern zur Verfügung. API-Token und Nutzungskredite können auf dem ERPC Web-Dashboard ausgegeben oder verifiziert werden.- ERPC Web-Dashboard: ERPC Web-Dashboard
Transaction Success Rate und SWQoS Endpunkt
Um die Transaktionserfolgsrate und die Ausführungsgeschwindigkeit weiter zu verbessern, empfehlen wir den SWQoS Endpunkt. SWQoS (Stake-weighted Quality of Dienst) priorisiert Validierungsgeräte mit Stake-Verbindungen. Die Leader vergeben etwa 80% der Bandbreite auf den vorrangigen Verkehr und 20% auf den Nicht-Prioritätsverkehr, wobei die Prioritätsspur etwa 5x Durchsatz bietet. Diese Terminierung erfolgt vor der Priority-fee-Bewertung, was bedeutet, in die SWQoS-Prioritätsspur zu gelangen, ist die Voraussetzung für eine echte niedrige Latenz-Performance.
