서비스 할당량 모델

이 페이지에서는 Google Cloud의 서비스에 대한 할당량 관리 모델을 설명합니다. 이 할당량 모델을 이해하면 서비스 사용량의 할당량 관리 기능을 사용할 때 유용합니다. 일반 정보는 할당량 다루기를 참조하세요.

서비스 소비자는 서비스 사용이 발생한 프로젝트, 폴더, 조직을 의미합니다.

측정항목 및 한도

할당량 측정항목은 서비스 소비를 처리하는 서비스에서 정의된 항목입니다. 할당량 측정항목은 가상 머신 인스턴스와 같은 구체적인 항목을 계산하거나 특정 유형의 API 요청과 같은 임시 항목을 계산할 수 있습니다.

할당량 한도는 소비자의 할당량 측정항목 소비가 제한되는 방식을 지정하는 서비스에서 정의된 항목입니다. 할당량 측정항목에는 여러 할당량 한도가 있을 수 있습니다. 할당량 한도에는 비율 제한과 배당 제한이라는 두 가지 유형이 있습니다. 비율 제한의 경우 지정된 시간(예: 1분 또는 하루)이 지나면 재설정을 수행합니다. 배당 할당량의 경우 시간에 따라 재설정을 수행하지 않습니다. 대신 리소스가 더 이상 사용되지 않으면 명시적으로 해제해야 합니다.

할당량 재정의

각 할당량 한도에는 서비스 소유자가 설정한 모든 소비자에 대한 기본값이 있습니다. 이 기본값은 할당량 재정의에 의해 변경될 수 있습니다.

서비스 소유자는 특정 소비자에게 할당량 재정의를 적용하여 해당 소비자에 대한 기본값을 바꿀 수 있습니다. 이를 제작자 재정의라고 합니다. 예를 들어 서비스 소유자는 제작자 재정의를 적용하여 계약의 일부로 특정 고객에게 높은 할당량을 부여할 수 있습니다.

소비자는 자신의 서비스 사용을 제한하기 위해 본인 소유의 프로젝트, 폴더 또는 조직에 할당량 재정의를 적용할 수 있습니다. 이를 소비자 재정의라고 합니다. 예를 들어 소비자는 예산 초과를 방지하기 위해 소비자 재정의를 비용 관리 수단으로 자신의 프로젝트에 적용할 수 있습니다.

소비하는 서비스에 소비자 재정의를 적용하려면 Service Usage API를 사용합니다.

소유한 서비스의 소비자에게 제작자 재정의를 적용하려면 Service Consumer Management API를 사용합니다.

할당량 한도 계산

다음 수식은 소비자의 할당량 한도를 계산합니다.

if adminOverride is present,
  upperBound = adminOverride
else if producerOverride is present,
  upperBound = producerOverride
else
  upperBound = defaultLimit

if consumerOverride is present,
  quotaLimit = min(consumerOverride, upperBound)
else
  quotaLimit = upperBound

리전 및 영역 할당량

할당량 한도는 전역적으로 계산되거나 각 Cloud 리전 또는 Cloud 영역에서 개별적으로 계산될 수 있습니다.

예를 들어 서비스에 분당 100개의 API 요청이라는 글로벌 할당량 한도가 있다고 가정합니다. us-central1 리전에서 80개의 API 요청이 생성되고 asia-northeast3에서 70개의 요청이 생성된 경우 150개의 요청이 계산되어 글로벌 한도에 맞지 않는 것으로 확인되고 일부 요청이 거부됩니다. 그러나 리전 한도의 경우 각 리전마다 분당 100개의 요청이 있는 별도의 할당량이 있습니다. us-central1의 요청 80개는 해당 리전에서 요청 100개 한도를 초과하지 않으며, asia-northeast3의 요청 70개 또한 해당 리전에서 요청 100개 한도를 초과하지 않으므로 요청이 거부되지 않습니다.

할당량 재정의는 한 번에 모든 리전에 적용하거나 특정 리전 하나에 적용할 수 있습니다. 재정의가 특정 리전에 적용되는 경우 다른 리전의 유효 한도에는 영향을 미치지 않습니다.

마찬가지로 할당량 재정의를 한 번에 모든 영역에 적용하거나 특정 영역 하나에 적용할 수 있습니다. 재정의가 특정 영역에 적용되는 경우 다른 영역의 유효 한도에는 영향을 미치지 않습니다.