getBlockHeight es una forma sencilla de consultar un nodo de Solana para obtener su altura de bloque actual. La altura de bloque representa la cantidad de bloques que se han procesado desde el bloque génesis (slot 0).
Este método es útil para saber rápidamente cuánto ha avanzado la cadena o para consultar la altura del bloque más reciente en un nivel de compromiso específico.
Casos de uso comunes
- Monitorear el avance de la cadena: Llama a este método periódicamente para comprobar el avance de la cadena.
- Obtener una instantánea de la longitud de la cadena: Determina la cantidad total de bloques procesados hasta un punto determinado (según el nivel de compromiso).
- Cruzar referencias con otros datos: Usa la altura de bloque como punto de referencia cuando analices otros datos o eventos en cadena.
Parámetros
getBlockHeight puede recibir opcionalmente un objeto de configuración como primer parámetro (o puedes llamarlo sin parámetros para usar los valores predeterminados):
config(objeto, opcional): Un objeto de configuración con los siguientes campos:commitment(cadena, opcional): Especifica el nivel de compromiso que se usará en la consulta. El valor predeterminado esfinalized.finalized: El nodo consultará el bloque más reciente que la gran mayoría del clúster haya confirmado como bloque que alcanzó el bloqueo máximo.confirmed: El nodo consultará el bloque más reciente por el que haya votado una gran mayoría del clúster.processed: El nodo consultará su bloque más reciente. Ten en cuenta que es posible que el bloque no esté completo.
minContextSlot(número, opcional): El slot mínimo en el que se puede evaluar la solicitud. Esto garantiza que la altura de bloque devuelta provenga de un slot igual o posterior aminContextSlot.
finalized.
Consejos para desarrolladores
- Los niveles de compromiso son importantes: La altura de bloque devuelta puede variar según el nivel
commitmentespecificado.finalizedproporciona la altura más estable, mientras queprocessedpuede proporcionar una altura más actual, pero potencialmente transitoria. minContextSlotpara mantener la coherencia: UsaminContextSlotsi necesitas garantizar que la altura de bloque se consulte desde un estado que sea al menos tan reciente como un slot específico que estés monitoreando.- No es un número de slot: Recuerda que la altura de bloque es diferente del número de slot. Un slot es un periodo, y no todos los slots producen un bloque (se denominan slots omitidos). La altura de bloque es el recuento de los bloques realmente producidos.
- Comprobación básica del estado de la cadena: Aunque es sencillo,
getBlockHeightpuede formar parte de una comprobación básica del estado o la sincronización de la cadena para tu aplicación o sistema de monitoreo.
Respuesta
El camporesult de la respuesta JSON-RPC será un único número:
blockHeight(número): La altura de bloque actual (u64) del nodo según el nivel de compromiso especificado.
Ejemplo: obtener la altura de bloque actual
Obtengamos la altura de bloque actual del RPC de Helius Devnet. Nota: ReemplazaYOUR_API_KEY por tu clave de API de Helius real en los siguientes ejemplos.