Skip to main content
O método RPC getEpochSchedule retorna as informações de agendamento de epoch da configuração de gênesis do cluster. Esses dados definem como os epochs são estruturados, incluindo seu comprimento e como o cronograma de líderes é determinado em relação ao início de um epoch. Compreender o agendamento de epochs é crucial para aplicações que precisam se alinhar com eventos de rede, prever limites de epochs ou entender o mecanismo de rotação de líderes.

Casos de Uso Comuns

  • Previsão de Limites de Epochs: Determine o número de slots em um epoch para estimar quando o epoch atual terminará e o próximo começará.
  • Cálculo do Cronograma de Líderes: Entenda o leaderScheduleSlotOffset para saber com quanta antecedência os cronogramas de líderes são gerados para um próximo epoch.
  • Análise da Inicialização da Rede: Observe warmup, firstNormalEpoch e firstNormalSlot para entender a fase inicial de aumento dos comprimentos dos epochs do cluster, se aplicável.
  • Construção de Ferramentas de Monitoramento de Rede: Use essas informações para exibir o tempo e a progressão do epoch com precisão.

Parâmetros de Solicitação

Este método não utiliza nenhum parâmetro.

Estrutura de Resposta

O campo result da resposta JSON-RPC será um objeto contendo os seguintes campos:
  • slotsPerEpoch (u64): O número máximo de slots em cada epoch (após o período de aquecimento, se houver).
  • leaderScheduleSlotOffset (u64): O número de slots antes do início de um epoch para o qual o cronograma de líderes para esse epoch é gerado.
  • warmup (boolean): Um booleano indicando se o cluster tem um período de aquecimento onde os epochs começam mais curtos e aumentam gradualmente de comprimento.
  • firstNormalEpoch (u64): O número do primeiro epoch que possui o comprimento completo slotsPerEpoch. Isso é relevante se warmup for verdadeiro.
  • firstNormalSlot (u64): O índice do slot do primeiro slot no firstNormalEpoch. Isso é relevante se warmup for verdadeiro.

Exemplos

1. Obter o Cronograma de Epoch do Cluster

Este exemplo busca o cronograma de epoch.

Dicas para Desenvolvedores

  • Informação Estática: O cronograma de epoch é determinado pela configuração de gênesis do cluster e geralmente não muda, a menos que haja uma atualização significativa na rede ou o lançamento de um novo cluster com parâmetros diferentes.
  • Mainnet vs. Testnet/Devnet: O cronograma de epoch, particularmente slotsPerEpoch e os parâmetros de aquecimento, podem diferir significativamente entre Mainnet Beta, Testnet e Devnet. Sempre consulte o cluster específico pelo qual você está interessado.
  • Período de Aquecimento: Se warmup for true, os epochs antes de firstNormalEpoch terão menos slots que slotsPerEpoch. O cálculo exato para comprimentos de epoch de aquecimento é 2^N * MINIMUM_SLOTS_PER_EPOCH onde N é o número do epoch (começando do 0) até firstNormalEpoch ser alcançado. O MINIMUM_SLOTS_PER_EPOCH é tipicamente 32.
Este guia fornece as informações necessárias para usar o método RPC getEpochSchedule para entender a temporização e a estrutura fundamentais dos epochs dentro de um cluster Solana.