Acerca de los límites de frecuencia para GitHub Enterprise Server
Los límites de velocidad ayudan a evitar el uso excesivo de recursos en tu instancia de GitHub Enterprise Server que podrían afectar a la disponibilidad o el rendimiento de todos los usuarios. Puede configurar los límites de velocidad para GitHub Enterprise Server APIs y GitHub Actions.
Implemente los límites de velocidad cuidadosamente y se comunique con los usuarios a medida que los ajuste. Comience con los límites de velocidad permisivos y ajuste gradualmente para adaptarlos a su entorno.
También puedes configurar los límites de frecuencia para los intentos de autenticación en Consola de administración. Para más información, consulta Administración del acceso a la Consola de administración.
Habilitación de límites de frecuencia para GitHub Enterprise Server APIs
Demasiadas solicitudes a GitHub Enterprise Server APIs pueden ralentizar la instancia o hacer que no esté disponible. Para obtener más información sobre cómo afectan los límites de velocidad de API a los usuarios, consulte Límites de tasa de la API REST.
Puede excluir usuarios específicos de los límites de velocidad de API mediante la ghe-config utilidad en el shell administrativo. Para más información, consulta Utilidades de la línea de comandos.
Nota:
En Consola de administración se indica el período de tiempo (por minuto o por hora) de cada límite de frecuencia.
-
Desde una cuenta administrativa de GitHub Enterprise Server, en la esquina superior derecha de cualquier página, haz clic en .
-
Si todavía no está en la página "Administrador del sitio", en la esquina superior izquierda, haga clic en Administrador del sitio.
-
En la barra lateral " Site admin", haz clic en Consola de administración.
-
En "Limitación de frecuencia", seleccione Habilitar limitación de frecuencia de API HTTP.
-
Escriba límites para solicitudes autenticadas y no autenticadas para cada API, o acepte los límites predeterminados rellenados previamente.
-
En la barra lateral "Configuración" , haga clic en Guardar configuración.
Nota:
Al guardar la configuración en Consola de administración se restablecen los servicios del sistema, lo que podría generar un tiempo de inactividad visible para el usuario.
-
Espera que se complete la fase de configuración.
Habilitar los límites de tasa secundarios
Los límites de velocidad secundaria ayudan a mantener tu instancia de GitHub Enterprise Server estables para todos los usuarios.
-
Desde una cuenta administrativa de GitHub Enterprise Server, en la esquina superior derecha de cualquier página, haz clic en .
-
Si todavía no está en la página "Administrador del sitio", en la esquina superior izquierda, haga clic en Administrador del sitio.
-
En la barra lateral " Site admin", haz clic en Consola de administración.
-
En "Limitación de frecuencia", seleccione Habilitar limitación de frecuencia secundaria.
-
Escriba los límites de las solicitudes totales, del límite de CPU y del límite de CPU para la búsqueda, o acepte los límites predeterminados.
-
En la barra lateral "Configuración" , haga clic en Guardar configuración.
Nota:
Al guardar la configuración en Consola de administración se restablecen los servicios del sistema, lo que podría generar un tiempo de inactividad visible para el usuario.
-
Espera que se complete la fase de configuración.
Habilitación de los límites de frecuencia para Git
Si un miembro del personal de GitHub lo ha recomendado, puedes aplicar límites de frecuencia de Git por red de repositorios o por identificador de usuario. Los límites de velocidad de Git se miden en operaciones simultáneas por minuto y se adaptan a la carga de CPU actual.
Advertencia
Deje esta configuración deshabilitada a menos que se lo recomiende directamente el personal de GitHub. Las operaciones de Git rara vez son el principal impulsor del uso de CPU y RAM. La habilitación de esta característica puede hacer que las operaciones de Git tengan más probabilidades de producir errores en una carga alta, pero no solucionan la causa subyacente.
-
Desde una cuenta administrativa de GitHub Enterprise Server, en la esquina superior derecha de cualquier página, haz clic en .
-
Si todavía no está en la página "Administrador del sitio", en la esquina superior izquierda, haga clic en Administrador del sitio.
-
En la barra lateral " Site admin", haz clic en Consola de administración.
-
En "Limitación de frecuencia", seleccione Habilitar limitación de frecuencia de Git.
-
En "Límite de red del repositorio", escribe un límite para cada red del repositorio.
-
En "Límite de identificador de usuario", escribe un límite para cada identificador de usuario.
-
En la barra lateral "Configuración" , haga clic en Guardar configuración.
Nota:
Al guardar la configuración en Consola de administración se restablecen los servicios del sistema, lo que podría generar un tiempo de inactividad visible para el usuario.
-
Espera que se complete la fase de configuración.
Configuración de límites de frecuencia para GitHub Actions
Puedes aplicar un límite de frecuencia a las ejecuciones de flujo de trabajo de GitHub Actions. Para obtener más información sobre GitHub Actions, consulta Acerca de GitHub Actions para empresas.
Acerca de los límites de frecuencia para GitHub Actions
Su instancia de GitHub Enterprise Server asigna cada tarea de flujo de trabajo GitHub Actions a un ejecutor. Si su instancia no puede asignar un trabajo inmediatamente a un runner disponible, el trabajo permanece en la cola. Si GitHub Actions experimenta una carga elevada sostenida, la cola puede retrasarse y el rendimiento de tu instancia de GitHub Enterprise Server puede degradarse.
Para evitar esto, puede configurar un límite de velocidad para GitHub Actions. Este límite de velocidad se mide en ejecuciones de trabajos por minuto. GitHub Enterprise Server aplica el límite de velocidad en todas las ejecuciones de trabajo de la instancia. Si las ejecuciones superan el límite de velocidad, las ejecuciones adicionales fallan en lugar de entrar en la cola. El siguiente error aparece en las anotaciones de la ejecución.
Has superado el límite de frecuencia de las solicitudes de ejecución de flujo de trabajo. Espera antes de reintentar la ejecución.
Un buen límite de tasa protege tu instancia de GitHub Enterprise Server de picos inusuales en GitHub Actions sin interferir en las operaciones diarias. El umbral correcto depende de los recursos disponibles de la instancia y de la carga de trabajo típica. Para obtener más información sobre los requisitos de hardware para GitHub Actions, consulte Introducción a GitHub Actions para GitHub Enterprise Server.
De forma predeterminada, el límite de frecuencia para GitHub Actions está deshabilitado. GitHub Enterprise Server puede controlar picos de uso temporales sin problemas, por lo que este límite de velocidad protege frente a una carga elevada sostenida. Déjelo deshabilitado a menos que experimente problemas de rendimiento. En algunos casos, Soporte de GitHub puede recomendar habilitar un límite de tasa para GitHub Actions.
Habilitación o deshabilitación de los límites de frecuencia para GitHub Actions
-
SSH en tu instancia de GitHub Enterprise Server Si la instancia consta de varios nodos, por ejemplo, si la alta disponibilidad o la replicación geográfica están configuradas, utiliza SSH en el nodo principal. Si usas un clúster, puedes utilizar SSH en cualquier nodo. Reemplace HOSTNAME por el nombre de host de la instancia, o el nombre de host o la dirección IP de un nodo. Para más información, consulta Acceder al shell administrativo (SSH).
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME -
Para habilitar y configurar el límite de frecuencia, ejecuta los dos comandos siguientes, reemplazando RUNS-PER-MINUTE por el valor de su elección.
ghe-config actions-rate-limiting.enabled true ghe-config actions-rate-limiting.queue-runs-per-minute RUNS-PER-MINUTE -
Para deshabilitar el límite de velocidad, ejecute el siguiente comando.
ghe-config actions-rate-limiting.enabled false -
Para aplicar la configuración, ejecuta el siguiente comando.
ghe-config-apply -
Espera que se complete la fase de configuración.
Control de la velocidad del servicio de actualización en vivo
Si el número de solicitudes de AJAX a la instancia de GitHub Enterprise Server provoca problemas, es posible que tenga que ajustar el límite de velocidad del controlador de WebSockets usado por estas actualizaciones dinámicas. Para obtener más información sobre cómo ver las solicitudes de Alive, consulte Acerca de paneles de supervisión.
Con los límites de frecuencia principal habilitados, el límite predeterminado es de 100 solicitudes por minuto por dirección IP. Use la utilidad ghe-config en el shell administrativo para establecer app.github.web-sockets-rate-limit en el número de solicitudes permitidas por minuto por dirección IP o para deshabilitar este límite de velocidad. Establecer el límite en cualquier valor entero no positivo (por ejemplo, 0, -1, disabled) deshabilita la limitación de velocidad en el controlador WebSockets.
Después de cambiar esta configuración, ejecute ghe-config-apply para aplicarlos.