인바운드 REST API 속도 제한

  • 릴리스 버전: Australia
  • 업데이트 날짜 2026년 03월 12일
  • 소요 시간: 3분
  • 과도한 인바운드 REST API 요청을 방지하려면 시간당 처리되는 인바운드 REST API 요청 수를 제한하는 규칙을 설정합니다. 특정 사용자, 특정 역할의 사용자 또는 모든 사용자에 대한 요청을 제한하는 규칙을 만들 수 있습니다.

    요율 제한 규칙은 요율 제한 규칙 [sys_rate_limit_rules] 테이블에 만들어집니다.

    주:
    요청이 인스턴스에 도달하면 각 노드는 사용자당 속도 제한 수를 유지합니다. 30초마다 카운트가 데이터베이스에 커밋됩니다. 따라서 요율 제한 규칙은 최대 30초 동안 적용되지 않을 수 있습니다.

    요율 제한 우선순위

    인바운드 REST API 요청이 동일한 자원에 대한 여러 속도 제한 규칙과 일치하는 경우 다음과 같이 속도 제한 우선순위가 적용됩니다.
    • 단일 사용자에 대해 설정된 규칙은 모든 사용자에 대한 규칙과 역할이 있는 사용자에 대한 규칙을 재정의합니다.
    • 모든 사용자에 대한 규칙을 무효화하는 역할이 있는 사용자에 대해 설정된 규칙입니다.
    이 예시에는 REST API 자원 GET /now/v2/table/incident에 대한 네 가지 속도 제한 규칙이 있습니다.
    GET /now/v2/table/incident에 대한 요율 제한 규칙 목록입니다.
    이러한 속도 제한 규칙은 다음 순서로 적용됩니다.
    1. 사용자별 인시던트 제한은 시간당 최대 200개의 요청을 제출할 수 있는 ITIL 사용자에게 적용됩니다.
    2. 임포트 관리자에 따라 인시던트 제한 은 import_admin 역할이 있는 모든 사용자에게 적용됩니다. import_admin 역할을 가진 각 사용자는 시간당 최대 500개의 요청을 제출할 수 있습니다.
    3. itil로 인시던트 제한 은 itil 역할을 가진 모든 사용자에게 적용됩니다. itil 역할을 가진 각 사용자는 시간당 최대 100개의 요청을 제출할 수 있습니다.
    4. 인시던트 제한은 모든 사용자에게 적용됩니다. 각 사용자는 시간당 최대 100개의 요청을 제출할 수 있습니다.

    ITIL 사용자가 GET /now/v2/table/incident를 요청하면 해당 요청은 인시던트 제한, itil로 인시던트 제한사용자별 인시던트 제한이라는 세 가지 규칙의 기준과 일치합니다. 다른 규칙보다 우선하므로 사용자별 인시던트 제한 규칙만 적용됩니다. 따라서 ITIL 사용자는 시간당 최대 200개의 요청을 제출할 수 있습니다.

    사용자에게 REST API 자원에 대한 여러 속도 제한 규칙의 기준과 일치하는 역할이 두 개 이상 있는 경우 자원에 대한 사용자의 요청에 가장 적은 요청 수를 허용하는 규칙이 적용됩니다. 위 그림의 예시 규칙에서는 사용자 Abel Tuter가 import_admin 역할과 itil 역할을 모두 가지고 있다고 가정합니다. Abel Tuter가 요청을 제출하면 관리자 규칙으로 인시던트 제한 규칙과 itil로 인시던트 제한 규칙의 기준을 모두 충족합니다. 가장 적은 요청 수를 허용하므로 itil로 인시던트 제한 규칙만 적용됩니다. 따라서 Abel Tuter는 시간당 최대 100개의 요청을 제출할 수 있습니다.

    REST API 응답 헤더

    REST API 탐색기 또는 HTTP 클라이언트(예Postman API 플랫폼: )를 사용하여 인바운드 REST API 요청을 생성할 수 있습니다. 요청이 요율 제한 규칙과 일치하면 여러 HTTP 응답 헤더가 요율 제한에 대한 정보를 제공합니다.
    • X-RateLimit-Limit는 시간당 허용되는 요청 수를 표시합니다.
    • X-RateLimit-Reset 은 다음에 UNIX 예약된 요율 제한 창의 재설정에 대한 타임스탬프를 표시합니다.
    • X-RateLimit-Rule 은 적용 중인 요율 제한 규칙 [sys_rate_limit_rules]의 sys_id 표시합니다.
    요율 제한을 초과하여 요청이 거부되면 시스템은 요율 제한에 대한 응답 헤더 외에 Retry-After 응답 헤더를 반환합니다. Retry-After 응답 헤더는 요율 제한을 초과하지 않도록 요청을 재시도할 수 있는 시간(초)을 표시합니다. 다음 오류 응답이 반환됩니다.
    {
        "error": {
            "message": "Rate limit exceeded",
            "detail": "Rate limit of 100 requests per hour for Table API exceeded"
        },
        "status": "failure"
    }

    거부된 요청의 상태 코드는 429 요청이 너무 많습니다.