Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы может все еще выполняться. Актуальные сведения см. в документации на английском языке.

Настройка ограничений скорости

Для GitHub Enterprise Server можно задать ограничения скорости с помощью Консоль управления.

Кто может использовать эту функцию

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

Ограничения скорости для GitHub Enterprise Server

Чтобы предотвратить чрезмерное использование ресурсов в экземпляр GitHub Enterprise Server, которые могут повлиять на доступность или производительность экземпляра для всех пользователей, можно настроить ограничения скорости. Ограничения скорости настраиваются для GitHub Enterprise Server APIs и GitHub Actions.

Тщательно реализуйте ограничения скорости и часто общайтесь с пользователями при настройке ограничений. Чтобы избежать прерывания работы пользователей, GitHub рекомендует начать с разрешительных ограничений скорости и постепенно настраивать ограничения в соответствии с вашей средой.

Вы также можете настроить ограничения скорости для попыток проверки подлинности в Консоль управления. Дополнительные сведения см. в разделе Управление доступом к консоли управления.

Включение ограничений скорости для GitHub Enterprise Server APIs

Чрезмерное количество запросов к GitHub Enterprise Server APIs может повлиять на доступность и производительность экземпляра. Дополнительные сведения о том, как ограничения скорости для API влияют на пользователей, см. в разделе Ресурсы в REST API.

Список пользователей можно исключить из ограничений скорости API с помощью служебной программы ghe-config в административной оболочке. Дополнительные сведения см. в разделе Служебные программы командной строки.

Примечание. В Консоль управления указан период времени (в минуту или час) для каждого ограничения скорости.

  1. В учетной записи администратора GitHub Enterprise Server в правом верхнем углу любой страницы щелкните .

  2. Если вы еще не на странице "Администратор сайта", в левом верхнем углу щелкните Администратор сайта. 1. На боковой панели Администратор сайта щелкните Консоль управления.

  3. В разделе "Ограничение скорости" выберите Включить ограничение скорости API HTTP.

  4. Введите ограничения для запросов, прошедших и не прошедших проверку подлинности для каждого API, или примите предварительно заполненные ограничения по умолчанию.

  5. На боковой панели "Параметры" щелкните Сохранить параметры.

    Примечание. Сохранение параметров в Консоль управления перезапускает системные службы, что может привести к простою, заметному для пользователей.

  6. Подождите завершения запуска конфигурации.

Включение дополнительных ограничений скорости

Установка дополнительных ограничений скорости защищает общий уровень обслуживания на экземпляр GitHub Enterprise Server.

  1. В учетной записи администратора GitHub Enterprise Server в правом верхнем углу любой страницы щелкните .

  2. Если вы еще не на странице "Администратор сайта", в левом верхнем углу щелкните Администратор сайта. 1. На боковой панели Администратор сайта щелкните Консоль управления.

  3. В разделе "Ограничение скорости" выберите Включить дополнительное ограничение скорости.

  4. Введите ограничения для общего количества запросов, ограничения ЦП и ограничения ЦП для поиска или примите предварительно заполненные ограничения по умолчанию.

  5. На боковой панели "Параметры" щелкните Сохранить параметры.

    Примечание. Сохранение параметров в Консоль управления перезапускает системные службы, что может привести к простою, заметному для пользователей.

  6. Подождите завершения запуска конфигурации.

Включение ограничений скорости для Git

Если сотрудник GitHub рекомендовал его, вы можете применить ограничения скорости Git для каждой сети репозитория или идентификатора пользователя. Ограничения скорости Git выражаются в параллельных операциях в минуту и подстраиваются под текущую загрузку ЦП.

Предупреждение: Мы рекомендуем оставить этот параметр отключенным, если только не рекомендовано непосредственно сотрудником GitHub. Операции Git редко являются ведущим драйвером использования ЦП и ОЗУ. Включение этой функции может повысить вероятность сбоя операций Git в условиях высокой нагрузки, но не решает основную причину этих условий.

  1. В учетной записи администратора GitHub Enterprise Server в правом верхнем углу любой страницы щелкните .

  2. Если вы еще не на странице "Администратор сайта", в левом верхнем углу щелкните Администратор сайта. 1. На боковой панели Администратор сайта щелкните Консоль управления.

  3. В разделе "Ограничение скорости" выберите Включить ограничение скорости Git.

  4. В разделе "Ограничение сети репозитория" введите ограничение для каждой сети репозитория.

  5. В разделе "Ограничение идентификаторов пользователей" введите ограничение для каждого идентификатора пользователя.

  6. На боковой панели "Параметры" щелкните Сохранить параметры.

    Примечание. Сохранение параметров в Консоль управления перезапускает системные службы, что может привести к простою, заметному для пользователей.

  7. Подождите завершения запуска конфигурации.

Настройка ограничений скорости для GitHub Actions

Вы можете применить ограничение скорости к выполнению рабочего процесса GitHub Actions. Дополнительные сведения о GitHub Actions см. в разделе Сведения о GitHub Actions для предприятий.

Сведения об ограничениях скорости для GitHub Actions

Экземпляр GitHub Enterprise Server назначает каждому заданию рабочего процесса GitHub Actions средству выполнения тестов. Если экземпляру не удается немедленно назначить задание доступному средству выполнения тестов, задание будет ожидать в очереди, пока средство выполнения тестов не освободится. Если GitHub Actions испытывает постоянную высокую нагрузку, очередь может выполнять резервное копирование, а производительность экземпляр GitHub Enterprise Server может снизиться.

Чтобы избежать снижения производительности, можно настроить ограничение скорости для GitHub Actions. Это ограничение скорости выражается в количестве запусков задания в минуту. GitHub Enterprise Server вычисляет и применяет ограничение скорости для суммы всех запусков заданий на экземпляре. Если запуски превышают ограничение скорости, то дополнительные запуски завершаются ошибкой вместо входа в очередь. Следующая ошибка появится в заметках запуска.

Превышено ограничение скорости для запросов на выполнение рабочего процесса. Подождите некоторое время перед повторением запуска.

Соответствующее ограничение скорости защищает экземпляр GitHub Enterprise Server от аномального использования GitHub Actions без вмешательства в повседневные операции. Точное пороговое значение зависит от доступных ресурсов экземпляра и общего профиля нагрузки. Дополнительные сведения о требованиях к оборудованию для GitHub Actions см. в разделе Начало работы с GitHub Actions для сервера GitHub Enterprise.

По умолчанию ограничение скорости для GitHub Actions отключено. Поскольку GitHub Enterprise Server может обрабатывать временные пики использования без снижения производительности, это ограничение скорости предназначено для защиты от устойчивой высокой нагрузки. Рекомендуется оставить ограничение скорости выключенным, пока отсутствуют проблемы с производительностью. В некоторых случаях Поддержка GitHub рекомендуется включить ограничение скорости для GitHub Actions.

Включение или выключение ограничений скорости для GitHub Actions

  1. Переход по протоколу SSH в экземпляр GitHub Enterprise Server. Если экземпляр состоит из нескольких узлов, например, если настроен высокий уровень доступности или георепликация, передача осуществляется по SSH в основной узел. При использовании кластера можно использовать для передачи по SSH в любой узел. Дополнительные сведения о доступе по протоколу SSH см. в разделе Доступ к административной оболочке (SSH).

    $ ssh -p 122 admin@HOSTNAME
  2. Чтобы включить и настроить ограничение скорости, выполните следующие две команды, заменив RUNS-PER-MINUTE выбранным значением.

    ghe-config actions-rate-limiting.enabled true
    ghe-config actions-rate-limiting.queue-runs-per-minute RUNS-PER-MINUTE
  3. Чтобы отключить ограничение скорости после включения, выполните следующую команду.

    ghe-config actions-rate-limiting.enabled false
    
  4. Чтобы применить конфигурацию, выполните следующую команду.

    ghe-config-apply
    
  5. Подождите завершения запуска конфигурации.