컴퓨트 크기와 한도
컴퓨트 크기와 한도 (Compute sizes and limits)
각 샌드박스의 컴퓨트 크기 선택과 계정 할당량, 요청 비율 제한을 설명해 드릴게요.
출처: 문서
본문
참고 (Note): Docker Sandboxes API와 SDK는 실험적(experimental)이에요. 기능, 인터페이스, 동작이 바뀔 수 있어요.
각 샌드박스의 컴퓨트 크기를 선택하고, 애플리케이션의 리소스 사용량을 계정 할당량 안에 유지해요. 요청 비율 제한도 애플리케이션이 API 요청을 얼마나 빨리 보낼 수 있는지 제약해요.
컴퓨트 크기 (Compute sizes)
클라우드 샌드박스는 다음 CPU/메모리 쌍을 지원해요:
| SDK 크기 이름 | CPUs | 메모리 (Memory) | 메모리 in MiB |
|---|---|---|---|
micro |
1 | 2 GiB | 2048 |
small |
2 | 4 GiB | 4096 |
medium |
4 | 8 GiB | 8192 |
large |
8 | 16 GiB | 16384 |
xl |
16 | 32 GiB | 32768 |
키트 실행 헬퍼는 resources를 생략하면 기본적으로 small을 사용해요. 다른 크기를 선택하려면 이름을 전달해요:
const sandbox = await client.kits.launchAndWait('shell', {
resources: 'medium',
});
레지스트리 이미지라면 client.create()에서 크기를 지정해요. 예를 들어 resources: 'small'. 명시적 CPU/메모리 쌍도 전달할 수 있어요: resources: { cpus: 2, memoryMib: 4096 }.
이름 있는 크기는 SDK 편의 기능이에요. 직접 REST 요청에서는 resources.cpus와 resources.memoryMib를 모두 제공해야 해요. CPU와 메모리는 독립적인 설정이 아니에요. 예를 들어 1 CPU + 1024 MiB는 지원되지 않는 쌍이에요.
image로 기존 이미지 리소스에서 만들 때는 리소스 설정을 생략해요. 이미지가 그 값을 제공하기 때문이에요.
요청이 받아들여질지는 여러분의 계정 접근과 사용 가능한 용량이 결정해요. 가격과 사용량 정보는 Billing 문서를 보세요.
계정 할당량 (Account quotas)
기본 할당량은 계정 전체에 적용돼요:
| 리소스 (Resource) | 기본 한도 (Default limit) |
|---|---|
| 동시 샌드박스 (Concurrent sandboxes) | 10 |
| 저장된 샌드박스 (Stored sandboxes) | 50 |
| 볼륨 (Volumes) | 100 |
| 시크릿 (Secrets) | 100 |
| 동시에 준비 중인 이미지 (Images being prepared at the same time) | 3 |
계정마다 할당량이 다를 수 있어요. 특정 허용량에 의존하는 워크로드를 계획하기 전에 Docker에 계정 한도를 확인하세요.
always-on으로 설정되지 않은 샌드박스를 멈추면 동시성 슬롯이 풀려요. 멈춘 샌드박스를 재시작하려면 동시성 슬롯이 필요해요. 멈춘 샌드박스도 저장된 샌드박스 할당량에는 계속 집계돼요. 더 필요 없는 샌드박스는 삭제해 저장 사용량을 줄이세요.
리소스를 만들기 전에 사용량을 확인했어도 할당량 오류를 처리하세요. 요청 사이에 다른 애플리케이션이 남은 허용량을 소비할 수 있어요. 재시도 전에 동시성을 줄이거나 사용하지 않는 리소스를 제거하세요.
요청 비율 제한 (Request rate limits)
비율 제한은 요청을 보낼 수 있는 속도를 제어하며 작업마다 다를 수 있어요. 요청이 비율 제한에 도달하면 기다렸다가 재시도하고, 서버가 지정한 지연을 존중해요. 동시 요청을 제한하고 재시도 횟수와 경과 시간에 상한을 두세요.
비율 제한과 리소스 할당량을 구분하려면 오류 세부 정보를 확인해요. 기다리면 비율 제한은 해결될 수 있지만, 할당량 초과는 리소스 사용량을 줄여야 해결돼요. 작업을 중복하지 않고 재시도하는 방법은 Errors and retries 문서를 보세요.
더 알아보기 (Learn more)
관련 문서와 심화 내용은 원문을 참고해 주세요.