> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/deployment/ko/production-checklist.md).

# 프로덕션 준비 체크리스트

일단 [배포 옵션을 선택했다면](/deployment/ko/choosing-a-deployment.md), 프로덕션 트래픽을 처리하기 전에 통합을 강화하는 데 이 페이지를 사용하세요. 여기에는 오류 처리 및 재시도, 타임아웃과 콜드 스타트, 속도 제한, 그리고 [전용 배포](/deployment/ko/roboflow-cloud/dedicated-deployments.md).

## HTTP 오류 및 재시도

Roboflow의 추론 및 관리 API는 표준 HTTP 상태 코드를 사용합니다. REST 상태 코드, SDK 예외, CLI 종료 코드를 포함한 전체 교차 도구 표는 [오류 및 상태 코드](https://docs.roboflow.com/reference/errors-and-status-codes). 프로덕션의 핵심 규칙은 실제로 재시도 가능한 것만 재시도하는 것입니다:

| 상태            | 재시도? | 안내                                                                                                    |
| ------------- | ---- | ----------------------------------------------------------------------------------------------------- |
| `200` / `204` | -    | 성공.                                                                                                   |
| `400`         | 아니요  | 형식이 잘못된 요청 - 페이로드를 수정하세요. 재시도하면 같은 잘못된 요청이 전송됩니다.                                                     |
| `401` / `403` | 아니요  | 인증 또는 접근 실패입니다. 재시도해도 키가 유효해지지 않습니다. API 키와 그 범위를 확인하세요.                                              |
| `402` / `423` | 아니요  | 요금제 제한, 할당량 도달 또는 청구 일시 중지. 다음에서 해결하세요: [청구](https://roboflow.com/pricing) 측면에서 해결하세요. 루프로 재시도하지 마세요. |
| `404`         | 아니요  | 리소스가 존재하지 않거나 귀하의 키로는 볼 수 없습니다.                                                                       |
| `429`         | 예    | 속도 제한이 적용되었습니다. 지수 백오프로 대기한 뒤 재시도하세요(참조 [속도 제한](#rate-limits)).                                       |
| `5xx`         | 예    | 일시적인 서버 오류입니다. 백오프로 안전하게 재시도할 수 있습니다.                                                                 |

**백오프 패턴.** 다음에 대해 `429` 및 `5xx`, 지수 백오프와 지터를 사용해 재시도하세요(예: 1초, 2초, 4초, 8초에 무작위 오프셋을 더함). 시도 횟수는 제한하세요. 절대 재시도하지 마세요 `401`/`403`/`404`/`400` 자동으로 - 대신 이를 애플리케이션에 노출하세요.

다음에 호출할 때 [전용 배포](/deployment/ko/roboflow-cloud/dedicated-deployments.md#http-api) 관리 서비스(`https://roboflow.cloud`), 응답 코드를 명시적으로 확인하세요:  `200` JSON 본문을 반환하고, 그 외의 코드는 오류 메시지를 문자열로 반환합니다.

## 타임아웃 및 콜드 스타트

해당 [Serverless Hosted API](/deployment/ko/roboflow-cloud/serverless-api.md) 는 모델을 필요할 때 로드합니다. 서버에 이미 상주하지 않은 모델에 대한 첫 요청(예열)은 몇 초가 걸릴 수 있고, 한동안 유휴 상태였던 모델(예: 추론 사이에 약 10분)이 언로드되어 다음 호출에서 다시 로드해야 할 수 있습니다.

* **클라이언트 타임아웃을 넉넉하게 설정하세요.** 콜드 스타트에 걸릴 정도로 빡빡한 클라이언트 타임아웃은 원래 성공했을 요청을 실패하게 만듭니다. 첫 요청과 유휴 기간 이후의 요청에는 예열 시간을 감안해 여유를 두세요.
* **모델을 예열하세요.** 예측 가능한 지연 시간이 중요하다면, 지연 시간에 민감한 트래픽을 보내기 전에 예열 요청을 보내 모델이 이미 캐시되도록 하세요.
* **응답 헤더를 확인하세요.** Serverless 응답에는 `x-model-cold-start` (이 요청이 로드 비용을 지불했는지 여부) 및 `x-processing-time`. 이를 사용해 콜드 스타트 빈도와 처리 시간을 모니터링하세요. 참고 [Serverless 요금](/deployment/ko/roboflow-cloud/serverless-api/pricing.md) 에서 이 헤더들이 청구에 어떻게 반영되는지 확인하세요.
* **업로드를 제한 이하로 유지하세요.** Serverless Hosted API는 최대 **20MB**까지의 파일 업로드를 허용합니다. 더 큰 이미지는 거부됩니다. 전송하기 전에 이미지를 축소하세요(Python SDK는 이를 자동으로 수행합니다). 어차피 이미지는 모델의 입력 크기에 맞게 조정되므로 보통 정확도에는 영향을 주지 않습니다. Batch Processing은 이미지당 동일한 20MB 제한을 적용합니다.

지속적인 낮은 지연 시간과 콜드 스타트 없이 사용하려면 [전용 배포](/deployment/ko/roboflow-cloud/dedicated-deployments.md) 또는 [Self-Hosted Inference](/deployment/ko/self-hosted/self-hosted.md) 를 공유 서버리스 엔드포인트 대신 사용하세요.

## 속도 제한

* **Serverless Hosted API.** 다음의 경우 `429`, 속도를 늦추고 지수 백오프로 재시도하세요. 제한에 계속 걸리거나 더 높은 처리량이 필요하면 기업 지원 담당자나 [Roboflow 포럼](https://discuss.roboflow.com), 또는 다음으로 이동 [전용 배포](/deployment/ko/roboflow-cloud/dedicated-deployments.md).
* **Deployment Manager API.** 엣지 디바이스 관리 엔드포인트는 엔드포인트별 명시적 제한을 적용하고 `429` 초과 시 반환합니다. 예를 들어, 디바이스 로그는 **IP당 분당 5개 요청으로** 및 **전체적으로 분당 50개로**, 그리고 텔레메트리 읽기는 **디바이스당 분당 60개 요청으로** 10초 동안 10개 요청 버스트가 있습니다. 참고 [Deployment Manager API](/deployment/ko/self-hosted/enterprise/deployment-manager.md#errors) 에서 정확한 제한과 오류 형식을 확인한 뒤 통합에 폴링을 넣으세요.

경로에 대해 문서화된 수치가 없으면 `429` 고정된 예산이 있다고 가정하지 말고 대기 신호로 간주하세요. [지원팀에 문의하세요](https://roboflow.com/sales) 더 높은 한도가 필요하면.

## 전용 배포 복제본 크기 조정

다음을 만들 때 [전용 배포](/deployment/ko/roboflow-cloud/dedicated-deployments.md#http-api), 다음을 설정할 수 있습니다 `min_replicas` 및 `max_replicas` (둘 다 기본값은 `1`):

* **`min_replicas`** 는 계속 실행되는 복제본 수입니다. 최소값을 높이면 버스트성 부하에서 콜드 스타트 지연이 줄어드는 대신 항상 켜진 용량이 늘어납니다.
* **`max_replicas`** 는 부하가 걸릴 때 배포가 얼마나 확장되는지 상한을 정합니다. 더 높은 피크 처리량이 필요하면 이를 높이세요.

안정적인 트래픽의 경우, `min_replicas` 및 `max_replicas` 의 `1` 가 가장 간단한 시작점입니다. 다음을 늘리세요 `max_replicas` 단일 복제본이 피크 부하를 따라가지 못할 때, 그리고 다음을 높이세요 `min_replicas` 한동안 트래픽이 없다가 온 첫 요청이 너무 느리면.

### 자동 일시 중지와의 상호작용

전용 배포 **비활성 상태가 일정 기간 지속되면 자동 일시 중지** - 다음의 경우 1시간으로 고정됨 `dev-cpu` 및 `dev-gpu` 유형이며, API 키로 요청을 보내면 재개됩니다. 일시 중지된 배포는 복제본을 제공하지 않으므로, 이를 재개하는 요청은 재개 지연 시간을 부담합니다.

* 다음을 사용하세요 **영구적인 `prod-cpu` / `prod-gpu`** 유형은 항상 준비되어 있어야 하는 프로덕션 트래픽용입니다.
* 임시 `dev-cpu` / `dev-gpu` 유형은 테스트와 프로토타이핑용으로 남겨 두세요. 이들은 몇 시간 후 자동으로 삭제되기도 합니다.
* 가동 시간 대신 요청 수 기반 청구가 필요하거나, 사용자 지정 일시 중지/복제본 정책이 필요하면, [영업팀에 문의하세요](https://roboflow.com/sales).

## 서비스를 시작하기 전에

* 재시도는 모든 외부 호출을 감싸며, 다음만 재시도합니다 `429` 및 `5xx` 백오프와 함께.
* 클라이언트 타임아웃은 서버리스 콜드 스타트를 흡수할 만큼 충분히 넉넉합니다.
* 이미지는 20MB 업로드 제한 이하로 유지되도록 축소됩니다.
* API 키는 필요한 최소 [범위](https://docs.roboflow.com/reference/authentication/authentication/scoped-api-keys) 를 사용하며, 하드코딩되지 않고 비밀 값으로 저장됩니다.
* 전용 배포의 경우, `min_replicas` / `max_replicas` 는 작업 부하에 맞게 크기가 조정되었고, 다음을 선택했습니다 `prod-*` 유형은 항상 켜져 있는 트래픽용입니다.
* 배포를 모니터링합니다 - 다음을 참조하세요 [모델 모니터링](/deployment/ko/monitoring-and-analytics/model-monitoring.md) - 그리고 오류율 및 지연 시간 회귀에 대해 알림을 설정합니다.
