Skip to main content

Como configurar limites de taxa

É possível definir limites de taxa no GitHub Enterprise Server usando o Console de Gerenciamento.

Quem pode usar esse recurso?

Site administrators can configure rate limits for a GitHub Enterprise Server instance.

Sobre os limites de taxa do GitHub Enterprise Server

Para evitar o uso excessivo de recursos no sua instância do GitHub Enterprise Server que possam afetar a disponibilidade ou o desempenho da instância para todos os usuários, você pode configurar limites de taxa. Os limites de taxa são configuráveis para a GitHub Enterprise Server APIs e o GitHub Actions.

Implemente os limites de taxa com cuidado e sempre se comunique com os usuários conforme ajusta os limites. Para evitar a interrupção do trabalho dos usuários, o GitHub recomenda que você comece com limites de taxa permissivos e ajuste-os gradualmente de acordo com o ambiente.

Você também pode configurar limites de taxa para tentativas de autenticação no Console de Gerenciamento. Para saber mais, confira Como gerenciar o acesso ao Console de Gerenciamento.

Habilitar limites de taxa para a GitHub Enterprise Server APIs

O número excessivo de solicitações à GitHub Enterprise Server APIs pode afetar a disponibilidade e o desempenho da instância. Para saber mais sobre como os limites de taxa da API afetam os usuários, confira Limites de taxa para a API REST.

Você pode isentar uma lista de usuários dos limites de taxa de API usando o utilitário ghe-config no shell administrativo. Para saber mais, confira Utilitários de linha de comando.

Note

O Console de Gerenciamento lista o período (por minuto ou por hora) de cada limite de taxa.

  1. Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em .

  2. Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site.

  3. Na barra lateral " Administrador do site", clique em Console de Gerenciamento .

  4. Em "Limitação de Taxa", selecione Habilitar Limitação de Taxa da API HTTP.

  5. Informe os limites para solicitações autenticadas e não autenticadas de cada API ou aceite os limites padrão sugeridos.

  6. Na barra lateral "Configurações", clique em Salvar configurações.

    Note

    Se você salvar as configurações no Console de Gerenciamento, isso reiniciará os serviços do sistema, o que poderá resultar em tempo de inatividade visível pelo usuário.

  7. Aguarde a conclusão da execução de suas configurações.

Habilitar limites de taxa secundária

A configuração dos limites de taxa secundária protege o nível geral do serviço em sua instância do GitHub Enterprise Server.

  1. Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em .

  2. Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site.

  3. Na barra lateral " Administrador do site", clique em Console de Gerenciamento .

  4. Em "Limitação de Taxa", selecione Habilitar Limitação de Taxa Secundária.

  5. Informe os limites para Solicitações totais, Limite de CPU e Limite de CPU para pesquisa ou aceite os limites padrão sugeridos.

  6. Na barra lateral "Configurações", clique em Salvar configurações.

    Note

    Se você salvar as configurações no Console de Gerenciamento, isso reiniciará os serviços do sistema, o que poderá resultar em tempo de inatividade visível pelo usuário.

  7. Aguarde a conclusão da execução de suas configurações.

Habilitar limites de taxa para Git

Se um membro da equipe do GitHub tiver recomendado isso, você poderá aplicar limites de taxa do Git por rede de repositório ou por ID de usuário. Os limites da taxa do Git são expressos em operações simultâneas por minuto e são adaptáveis com base na carga atual da CPU.

Warning

Recomendamos que você deixe essa configuração desabilitada, a menos que recomendado diretamente por um membro da equipe do GitHub. As operações do Git raramente são o que mais gera uso de CPU e RAM. A habilitação desse recurso pode aumentar a propensão a falhas das operações do Git em condições de alta carga, mas não aborda a causa subjacente dessas condições.

  1. Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em .

  2. Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site.

  3. Na barra lateral " Administrador do site", clique em Console de Gerenciamento .

  4. Em "Limitação de Taxa", selecione Habilitar Limitação de Taxa do Git.

  5. Em "Limite de Rede do Repositório", digite um limite para cada rede de repositório.

  6. Em "Limite de ID de Usuário", digite um limite para cada ID de usuário.

  7. Na barra lateral "Configurações", clique em Salvar configurações.

    Note

    Se você salvar as configurações no Console de Gerenciamento, isso reiniciará os serviços do sistema, o que poderá resultar em tempo de inatividade visível pelo usuário.

  8. Aguarde a conclusão da execução de suas configurações.

Configurar limites de taxa para GitHub Actions

Você pode aplicar um limite de taxa a execuções de fluxo de trabalho de GitHub Actions. Para mais informações sobre GitHub Actions, confira Sobre o GitHub Actions para empresas.

Sobre os limites de taxa para GitHub Actions

Sua instância do GitHub Enterprise Server atribui cada trabalho de fluxo de trabalho GitHub Actions a um executor. Se a sua instância não puder atribuir imediatamente um trabalho a um executor disponível, o trabalho aguardará em uma fila até que um executor esteja disponível. Se o GitHub Actions ficar uma carga alta continua, a fila poderá fazer backup e o desempenho da sua instância do GitHub Enterprise Server} poderá diminuir.

Para evitar essa degradação de desempenho, você pode configurar um limite de taxa para GitHub Actions. Esse limite de taxa é expresso em execuções de trabalho por minuto. GitHub Enterprise Server calcula e aplica o limite de taxa para a soma total de todas as execuções de trabalho na instância. Se as execuções excederem o limite de taxa, as execuções adicionais falharão em vez de entrar na fila. O erro a seguir aparecerá nas anotações da execução.

Você excedeu o limite de taxa para solicitações de execução de fluxo de trabalho. Aguarde antes de tentar a execução novamente.

Um limite de taxa apropriado protege a sua instância do GitHub Enterprise Server contra o uso anormal do GitHub Actions sem interferir nas operações diárias. O limite exato depende dos recursos disponíveis da instância e do perfil de carga geral. Para saber mais sobre os requisitos de hardware do GitHub Actions, confira Primeiros passos com o GitHub Actions para o GitHub Enterprise Server.

Por padrão, o limite de taxa para GitHub Actions está desabilitado. Como o GitHub Enterprise Server pode lidar com picos temporários de uso sem degradação de desempenho, esse limite de taxa destina-se a proteger contra carga alta sustentada. Recomendamos deixar o limite de taxa desabilitado, a menos que você esteja enfrentando problemas de desempenho. Em alguns casos, Suporte do GitHub pode recomendar que você ative um limite de taxa para GitHub Actions.

Habilitar ou desabilitar limites de taxa para GitHub Actions

  1. Conecte-se via SSH ao sua instância do GitHub Enterprise Server. Se sua instância for composta por vários nós, por exemplo, se a alta disponibilidade ou a replicação geográfica estiver configurada, efetue SSH no nó primário. Se você usar um cluster, poderá efetuar SSH em qualquer nó. Substitua HOSTNAME pelo nome do host da instância ou pelo nome do host ou endereço IP de um nó. Para obter mais informações, confira "Acesar o shell administrativo (SSH)".

    Shell
    ssh -p 122 admin@HOSTNAME
    
  2. Para habilitar e configurar o limite de taxa, execute os dois comandos a seguir, substituindo RUNS-PER-MINUTE pelo valor de sua escolha.

    ghe-config actions-rate-limiting.enabled true
    ghe-config actions-rate-limiting.queue-runs-per-minute RUNS-PER-MINUTE
    
  3. Para desabilitar o limite de taxa depois de habilitado, execute o comando a seguir.

    ghe-config actions-rate-limiting.enabled false
    
  4. Para aplicar a configuração, execute o comando a seguir.

    ghe-config-apply
    
  5. Aguarde a conclusão da execução de suas configurações.