Projects API에 대한 속도 제한
Offering: GitLab Self-Managed, GitLab Dedicated
GitLab 18.0 이상으로 업그레이드할 때 이 API에 대한 구성 가능한 속도 제한이 0으로 설정됩니다. 다음 Projects API 엔드포인트에 대한 요청에 대해 각 IP 주소 및 사용자별 속도 제한을 구성합니다:
GitLab 18.0 이상으로 업그레이드할 때 이 API에 대한 구성 가능한 속도 제한이 0으로 설정됩니다. 관리자는 필요에 따라 속도 제한을 조정할 수 있습니다. 영향을 받는 속도 제한에 대한 정보는 Projects, Groups 및 Users API에 대한 속도 제한 발표를 참조하세요.
Projects API 속도 제한 구성#
히스토리
- GitLab 16.0에서 일반적으로 사용 가능해짐. 기능 플래그
rate_limit_for_unauthenticated_projects_api_access제거됨. - GitLab 17.1에서
rate_limit_groups_and_projects_api라는 플래그와 함께 그룹 및 프로젝트 API에 대한 속도 제한이 도입됨. 기본적으로 비활성화됨. - GitLab 18.1에서 일반적으로 사용 가능해짐. 기능 플래그
rate_limit_groups_and_projects_api제거됨.
다음 Projects API 엔드포인트에 대한 요청에 대해 각 IP 주소 및 사용자별 속도 제한을 구성합니다:
| 제한 | 기본값 | 간격 |
|---|---|---|
GET /projects (인증되지 않은 요청) |
400 | 10분 |
GET /projects (인증된 요청) |
2000 | 10분 |
GET /projects/:id |
400 | 1분 |
GET /users/:user_id/projects |
300 | 1분 |
GET /users/:user_id/contributed_projects |
100 | 1분 |
GET /users/:user_id/starred_projects |
100 | 1분 |
전제 조건:
- 관리자 접근 권한.
속도 제한을 변경하려면:
- 오른쪽 상단에서 Admin을 선택합니다.
- 왼쪽 사이드바에서 Settings > Network를 선택합니다.
- Projects API rate limits를 확장합니다.
- 속도 제한의 값을 변경하거나, 비활성화하려면 속도 제한을
0으로 설정합니다. - Save changes를 선택합니다.
속도 제한:
- 인증된 각 사용자에게 적용됩니다. 요청이 인증되지 않은 경우 속도 제한은 IP 주소에 적용됩니다.
속도 제한을 초과하는 요청은 auth.log 파일에 기록됩니다.
예를 들어, GET /projects/:id에 대해 400 제한을 설정하면, 분당 400개 요청 속도를 초과하는 API 엔드포인트에 대한 요청이 차단됩니다. 1분 후 엔드포인트에 대한 접근이 복구됩니다.
프로젝트 API 엔드포인트에 대한 자세한 내용은 projects API를 참조하세요.
프로젝트 멤버 삭제에 대한 속도 제한 구성#
히스토리
- GitLab 16.9에서 도입됨.
멤버 삭제 엔드포인트에 대한 요청에 대해 각 프로젝트 및 사용자별 속도 제한을 구성합니다.
전제 조건:
- 관리자 접근 권한.
속도 제한을 변경하려면:
- 오른쪽 상단에서 Admin을 선택합니다.
- 왼쪽 사이드바에서 Settings > Network를 선택합니다.
- Members API rate limit를 확장합니다.
- Maximum requests per minute per group / project 텍스트 상자에 값을 입력합니다.
- Save changes를 선택합니다.
속도 제한:
- 기본값은 분당 60개 요청입니다.
- 각 프로젝트 및 사용자에게 적용됩니다.
0으로 설정하여 속도 제한을 비활성화할 수 있습니다.
속도 제한을 초과하는 요청은 auth.log 파일에 기록됩니다.
예를 들어, 60으로 제한을 설정하면 분당 60개 요청 속도를 초과하는 API 엔드포인트에 대한 요청이 차단됩니다. 1분 후 엔드포인트에 대한 접근이 재개됩니다.
프로젝트 멤버 목록에 대한 속도 제한 구성#
히스토리
- GitLab 18.6에서 도입됨.
프로젝트 멤버 목록 엔드포인트에 대한 요청에 대한 속도 제한을 구성합니다.
GET /projects/:id/members/all과 GET /groups/:id/members/all API 엔드포인트 모두 동일한 속도 제한 구성을 공유합니다. 프로젝트 엔드포인트에 속도 제한을 설정하면 그룹 엔드포인트에도 속도 제한이 적용됩니다.
전제 조건:
- 관리자 접근 권한.
속도 제한을 변경하려면:
- 오른쪽 상단에서 Admin을 선택합니다.
- 왼쪽 사이드바에서 Settings > Network를 선택합니다.
- Projects API rate limits를 확장합니다.
- Maximum requests to the
GET /projects/:id/members/allAPI per minute per user or IP address 텍스트 상자에 값을 입력합니다. - Save changes를 선택합니다.
속도 제한:
- 기본값은 분당 200개 요청입니다.
- 각 프로젝트 및 사용자에게 적용됩니다.
0으로 설정하여 속도 제한을 비활성화할 수 있습니다.
속도 제한을 초과하는 요청은 auth.log 파일에 기록됩니다.
예를 들어, 200으로 제한을 설정하면 분당 200개 요청 속도를 초과하는 API 엔드포인트에 대한 요청이 차단됩니다. 1분 후 엔드포인트에 대한 접근이 재개됩니다.
