Saltar al contenido principal
El método RPC getEpochInfo devuelve información sobre la época actual. Esto puede ser útil para comprender el estado actual de la red, cuánto ha avanzado la red en la época actual y cuándo podría comenzar la siguiente época. Para comprender mejor cómo funcionan en conjunto las épocas, los slots y los bloques en Solana, consulta nuestro artículo detallado.

Casos de uso comunes

  • Monitoreo del progreso de la época: Haz un seguimiento del índice del slot actual dentro de la época y del total de slots de la época para estimar el tiempo restante.
  • Análisis del estado de la red: Obtén el número de la época actual, la altura del bloque y la cantidad de transacciones procesadas en la época actual.
  • Comprobaciones de sincronización: Verifica si un nodo está razonablemente sincronizado con la red comparando la información de su época.

Parámetros de solicitud

El método getEpochInfo puede recibir opcionalmente un objeto de configuración con los siguientes parámetros:
  • commitment (cadena, opcional): Especifica el nivel de compromiso que se usará al consultar el libro mayor.
    • finalized: El nodo consultará el bloque más reciente confirmado de forma permanente. Usa preferentemente este valor para código nuevo.
    • confirmed: En Alpenglow, equivale a finalized; se conserva por compatibilidad.
    • processed: El nodo consultará su bloque más reciente. Ten en cuenta que el bloque podría no estar completo.
    • Si no se proporciona, el compromiso predeterminado es finalized.
  • minContextSlot (número, opcional): El slot mínimo en el que se puede evaluar la solicitud. Puedes usarlo para garantizar que la respuesta provenga de un estado suficientemente reciente.

Estructura de la respuesta

El campo result de la respuesta JSON-RPC será un objeto que contiene los siguientes campos:
  • absoluteSlot (u64): El número absoluto del slot actual.
  • blockHeight (u64): La altura actual del bloque.
  • epoch (u64): El número de la época actual.
  • slotIndex (u64): El slot actual en relación con el inicio de la época actual.
  • slotsInEpoch (u64): El número total de slots de la época actual.
  • transactionCount (u64 | null): El número total de transacciones procesadas en la época actual. Puede ser null si los datos no están disponibles.

Ejemplos

1. Obtén información sobre la época actual (sin parámetros)

Este ejemplo obtiene información sobre la época actual mediante el nivel de compromiso predeterminado.

2. Obtén información de la época actual con el compromiso finalized

Este ejemplo obtiene información de la época mediante el compromiso finalized.

Consejos para desarrolladores

  • Niveles de compromiso: processed es el más reciente, pero puede revertirse. En Alpenglow, confirmed e finalized tienen la misma latencia y garantía de finalidad permanente; usa preferentemente finalized para código nuevo.
  • Disponibilidad de transactionCount: El campo transactionCount podría ser null si el nodo no dispone inmediatamente de esta información o si no se registra para el nivel de compromiso específico.
  • Duración de la época: El número de slotsInEpoch puede variar. Puedes usar getEpochSchedule para obtener más detalles sobre la programación de épocas.
Esta guía proporciona la información necesaria para usar el método RPC getEpochInfo a fin de obtener detalles sobre la época actual en la red Solana.

Métodos relacionados

getEpochSchedule

Obtén detalles sobre el calendario de épocas

getSlot

Obtén el número del slot actual