getClusterNodes devuelve una lista de todos los nodos conocidos que participan actualmente en el clúster de Solana. Esta información puede ser útil para analizar la red, descubrir endpoints RPC alternativos o comprender la topología actual de la red desde la perspectiva del nodo consultado.
Casos de uso comunes
- Análisis de la topología de la red: Obtén una instantánea de los nodos conocidos del clúster, incluidas sus claves públicas y direcciones de red (gossip, TPU, RPC).
- Descubrimiento de endpoints RPC: Identifica otros posibles servidores RPC dentro del clúster, aunque su disponibilidad y límites de frecuencia pueden variar.
- Monitoreo de versiones de nodos: Observa las versiones de software que ejecutan los distintos nodos del clúster.
Parámetros de solicitud
Este método no acepta ningún parámetro.Estructura de la respuesta
El camporesult de la respuesta JSON-RPC será un arreglo de objetos. Cada objeto representa un nodo y contiene los siguientes campos:
pubkey(string): La clave pública (identidad) del nodo, codificada en base58.gossip(string | null): La dirección IP y el puerto del servicio gossip del nodo. Puede sernullsi no está disponible.tpu(string | null): La dirección IP y el puerto de la Unidad de Procesamiento de Transacciones (TPU) del nodo. Se usa para enviar transacciones directamente. Puede sernull.rpc(string | null): La dirección IP y el puerto del servicio JSON-RPC del nodo. Puede sernullsi el servicio RPC no está habilitado o este nodo no lo anuncia.version(string | null): La versión de software del nodo. Puede sernullsi la información de la versión no está disponible.featureSet(u32 | null): El identificador único del conjunto de características del nodo. Puede sernull.shredVersion(u16 | null): La versión de la estructura de datos que usa este nodo para almacenar y transmitir bloques (shreds). Puede sernull.
Ejemplos
1. Obtén todos los nodos conocidos del clúster
Este ejemplo obtiene la lista de todos los nodos conocidos por el endpoint RPC consultado.Consejos para desarrolladores
- Perspectiva del nodo: La lista devuelta refleja los nodos que conoce el nodo RPC específico que consultas. Distintos nodos RPC pueden tener vistas ligeramente diferentes del clúster, especialmente durante cambios en la red.
- Disponibilidad de RPC: No todos los nodos de la lista tendrán necesariamente sus puertos RPC abiertos o accesibles públicamente. Si el campo
rpcno es nulo, indica que se anuncia un endpoint RPC, pero no garantiza su accesibilidad ni rendimiento. - Lista dinámica: La topología del clúster es dinámica. Los nodos pueden unirse y retirarse, por lo que la lista puede cambiar con el tiempo.
- Respuesta extensa: En una red grande como Mainnet Beta, la respuesta puede ser bastante extensa e incluir muchos nodos.
getClusterNodes a fin de descubrir y comprender los nodos de un clúster de Solana.