Google Vault API는 공유 서비스이므로 모든 사용자가 공정하게 사용할 수 있도록 하고 Google Workspace 시스템의 전반적인 상태를 보호하기 위해 할당량 및 제한을 적용합니다.
제품 한도
조직 전체에서 진행 중인 내보내기는 20회 이하여야 합니다.
API 요청 할당량
각 조직에는 Vault API 및 vault.google.com을 통한 요청을 포함하여 모든 프로젝트 및 사용자에 대해 분당 600회의 법적 사안 읽기가 허용됩니다.
다음 표에는 프로젝트당 분당 요청 한도가 나와 있습니다.
프로젝트별 분당 읽기 요청 수 | |
---|---|
내보내기, 법적 사안, 저장된 쿼리 | 120 |
유지 | 228 |
장기 실행 작업 | 300 |
프로젝트별 분당 쓰기 요청 | |
---|---|
내보내기 | 20 |
유지 | 60 |
Matter 권한 | 30 |
Matter | 60 |
저장된 검색어 | 45 |
프로젝트별 분당 검색 (개수) 요청 | |
---|---|
검색 횟수 | 20 |
메서드별 할당량 사용량
요청에 사용되는 할당량은 호출된 메서드에 따라 다릅니다. 다음 표에는 메서드별 할당량 사용량이 나와 있습니다.
메서드 | 할당량 비용 |
---|---|
matters.close matters.create matters.delete matters.reopen matters.update matters.undelete
|
법적 사안 1회 읽기 법적 사안 1회 쓰기 |
matters.count |
1회 |
matters.get |
법적 사안 1개 읽음 |
matters.list |
법적 사안 읽기 10건 |
matters.addPermissions matters.removePermissions
|
법적 사안 읽기 1개 법적 사안 쓰기 1개 법적 사안 권한 쓰기 1개 |
matters.exports.create |
내보내기 읽기 1회 내보내기 쓰기 10회 |
matters.exports.delete |
내보내기 쓰기 1회 |
matters.exports.get |
내보내기 읽기 1회 |
matters.exports.list |
내보내기 읽기 5회 |
matters.holds.addHeldAccounts matters.holds.create matters.holds.delete matters.holds.removeHeldAccounts matters.holds.update
|
법적 사안 읽기 1회 법적 사안 1회 쓰기 보존 조치 읽기 1회 보존 조치 쓰기 1회 |
matters.holds.list |
법적 사안 읽기 1회 보존 조치 읽기 3회 |
matters.holds.accounts.create matters.holds.accounts.delete matters.holds.accounts.list
|
법적 사안 읽기 1회 법적 사안 1회 쓰기 보존 조치 읽기 1회 보존 조치 쓰기 1회 |
matters.savedQueries.create matters.savedQueries.delete
|
법적 사안 읽기 1회 법적 사안 쓰기 1회 저장된 쿼리 읽기 1회 저장된 쿼리 쓰기 1회 |
matters.savedQueries.get |
법적 사안 읽기 1개 저장된 쿼리 읽기 1개 |
matters.savedQueries.list |
법적 사안 읽기 1회 저장된 쿼리 읽기 3회 |
operations.get |
장기 실행 작업 1회 읽기 |
시간 기반 할당량 오류 해결
분당 또는 조직별 할당량을 초과하면 일반적으로 429: Too many requests
HTTP 상태 코드 응답을 받게 됩니다.
모든 시간 기반 오류 (X분당 최대 N개의 요청)의 경우 코드에서 예외를 포착하고 잘린 지수 백오프를 사용하여 기기가 과도한 부하를 생성하지 않도록 하는 것이 좋습니다.
지수 백오프는 네트워크 애플리케이션을 위한 표준 오류 처리 전략입니다. 지수 백오프 알고리즘이 요청 간 대기 시간을 기하급수적으로 늘려 최대 백오프 시간까지 요청을 재시도합니다. 그래도 요청이 실패하면 요청이 성공할 때까지 시간이 지남에 따라 요청 사이의 지연 시간이 길어지는 것이 중요합니다.
예시 알고리즘
지수 백오프 알고리즘이 기하급수적으로 요청을 재시도하여 재시도 간 대기 시간을 최대 백오프 시간까지 늘립니다. 예를 들면 다음과 같습니다.
- Google Vault API에 요청을 전송합니다.
- 요청이 실패하면 1 +
random_number_milliseconds
를 대기한 후 요청을 재시도합니다. - 요청이 실패하면 2 +
random_number_milliseconds
를 대기한 후 요청을 재시도합니다. - 요청이 실패하면 4 +
random_number_milliseconds
를 대기한 후 요청을 재시도합니다. maximum_backoff
시간까지 이를 반복합니다.- 최대 재시도 횟수까지 계속 대기하고 재시도하지만 재시도 간 대기 시간은 늘어나지 않습니다.
각 항목의 의미는 다음과 같습니다.
- 대기 시간은
min(((2^n)+random_number_milliseconds), maximum_backoff)
이며, 반복 (요청)할 때마다n
가 1씩 증가합니다. random_number_milliseconds
는 1,000밀리초 이하의 임의의 숫자입니다. 이렇게 하면 여러 클라이언트가 어떤 상황에 의해 동기화되고 모든 클라이언트가 한 번에 재시도되어 동기화된 웨이브로 요청을 전송하는 경우를 방지하는 데 도움이 됩니다.random_number_milliseconds
값은 각 재시도 요청 후 다시 계산됩니다.maximum_backoff
는 일반적으로 32 또는 64초입니다. 적절한 값은 사용 사례에 따라 다릅니다.
클라이언트는 maximum_backoff
시간에 도달한 후 재시도를 계속할 수 있습니다.
이후 재시도는 백오프 시간을 계속 늘릴 필요가 없습니다. 예를 들어 클라이언트에서 maximum_backoff
시간으로 64초를 사용하는 경우 이 값에 도달한 후 클라이언트는 64초마다 재시도할 수 있습니다. 특정 시점에 클라이언트가 무기한 재시도하지 못하게 해야 합니다.
재시도 간 대기 시간과 재시도 횟수는 사용 사례와 네트워크 조건에 따라 다릅니다.
할당량 상향 조정 요청
프로젝트의 리소스 사용량에 따라 할당량 상향 조정을 요청할 수 있습니다. 서비스 계정에 의한 API 호출은 단일 계정을 사용하는 것으로 간주됩니다. 할당량 증가를 신청한다고 해서 승인이 보장되지는 않습니다. 할당량을 크게 늘리는 경우 승인받는 데 시간이 더 오래 걸릴 수 있습니다.
모든 프로젝트의 할당량이 동일하지는 않습니다. 시간이 지나면서 Google Cloud 사용량이 늘어나면 할당량을 늘려야 할 수도 있습니다. 앞으로 사용량이 현저하게 늘어날 것으로 예상되는 경우 Google Cloud 콘솔의 할당량 페이지에서 사전에 할당량 조정을 요청할 수 있습니다.
자세한 내용은 다음 리소스를 참고하세요.
가격 책정
Google Workspace 고객은 추가 비용 없이 Google Vault API를 모두 사용할 수 있습니다.