getClusterNodes retorna uma lista de todos os nós conhecidos atualmente participando do cluster Solana. Esta informação pode ser útil para análise de rede, descoberta de endpoints RPC alternativos ou compreensão da topologia atual da rede a partir da perspectiva do nó consultado.
Casos de Uso Comuns
- Análise de Topologia de Rede: Obtenha um instantâneo dos nós conhecidos no cluster, incluindo suas chaves públicas e endereços de rede (gossip, TPU, RPC).
- Descobrindo Endpoints RPC: Identifique outros servidores RPC potenciais dentro do cluster (embora a disponibilidade e os limites de taxa possam variar).
- Monitoramento de Versões de Nó: Observe as versões de software sendo executadas por diferentes nós no cluster.
Parâmetros de Solicitação
Este método não aceita nenhum parâmetro.Estrutura de Resposta
O camporesult da resposta JSON-RPC será um array de objetos. Cada objeto representa um nó e contém os seguintes campos:
pubkey(string): A chave pública (identidade) do nó, codificada em base58.gossip(string | null): O endereço IP e porta para o serviço de gossip do nó. Pode sernullse não estiver disponível.tpu(string | null): O endereço IP e porta para a Unidade de Processamento de Transações (TPU) do nó. Isto é usado para enviar transações diretamente. Pode sernull.rpc(string | null): O endereço IP e porta para o serviço JSON-RPC do nó. Pode sernullse o serviço RPC não estiver habilitado ou anunciado por este nó.version(string | null): A versão do software do nó. Pode sernullse a informação da versão não estiver disponível.featureSet(u32 | null): O identificador único do conjunto de funcionalidades do nó. Pode sernull.shredVersion(u16 | null): A versão da estrutura de dados usada por este nó para armazenar e transmitir blocos (shreds). Pode sernull.
Exemplos
1. Obter Todos os Nós Conhecidos do Cluster
Este exemplo obtém a lista de todos os nós conhecidos pelo endpoint RPC consultado.Dicas para Desenvolvedores
- Perspectiva do Nó: A lista retornada reflete os nós conhecidos pelo nó RPC específico que você está consultando. Diferentes nós RPC podem ter visões ligeiramente diferentes do cluster, especialmente durante mudanças na rede.
- Disponibilidade RPC: Nem todos os nós listados terão necessariamente suas portas RPC abertas ou acessíveis publicamente. O campo
rpcsendo não-nulo indica um endpoint RPC anunciado, mas não garante acessibilidade ou desempenho. - Lista Dinâmica: A topologia do cluster é dinâmica. Nós podem entrar e sair, então a lista pode mudar ao longo do tempo.
- Resposta Grande: Em uma rede grande como a Mainnet Beta, a resposta pode ser bastante extensa, listando muitos nós.
getClusterNodes para descobrir e entender os nós dentro de um cluster Solana.