다음을 통해 공유


Azure Cosmos DB 서비스를 사용할 수 없음 예외 진단 및 문제 해결

적용 대상: NoSQL

SDK가 Azure Cosmos DB에 연결할 수 없습니다. 이 시나리오는 네트워크 상태에 따라 일시적이거나 영구적일 수 있습니다.

애플리케이션 디자인이 Azure Cosmos DB SDK를 사용한 복원력 있는 애플리케이션 디자인 가이드를 따라 다양한 네트워크 조건에 올바르게 반응하는지 확인하는 것이 중요합니다. 서비스를 사용할 수 없음 오류에 대비하여 애플리케이션이 다시 시도할 수 있어야 합니다.

서비스를 사용할 수 없음 오류에 대한 사례를 평가할 때:

  • 성공한 작업과 비교하여 영향을 받는 작업의 양으로 측정된 영향은 무엇인가요? 서비스 SLA 내에 있나요?
  • P99 대기 시간/가용성이 영향을 받나요?
  • 오류가 모든 애플리케이션 인스턴스 또는 하위 집합에만 영향을 주나요? 문제가 인스턴스의 하위 집합으로 축소되면 일반적으로 해당 인스턴스와 관련된 문제입니다.

문제 해결 단계

다음 목록에는 서비스를 사용할 수 없음 예외에 대한 알려진 원인과 솔루션이 나와 있습니다.

하위 상태 코드 확인

특정 조건에서 HTTP 503 서비스를 사용할 수 없음 오류에는 원인을 식별하는 데 도움이 되는 하위 상태 코드가 포함됩니다.

Substatus 코드 설명
20001 클라이언트 쪽 연결 문제(연결 시도 실패)가 있으므로 서비스를 사용할 수 없음 오류가 발생했습니다. 클라이언트가 다시 시도하여 복구를 시도했지만 모든 재시도가 실패했습니다.
20002 클라이언트 쪽 시간 제한으로 인해 서비스를 사용할 수 없음 오류가 발생했습니다. 클라이언트가 다시 시도하여 복구를 시도했지만 모든 재시도가 실패했습니다.
20003 운영 체제와 관련된 기본 I/O 오류로 인해 서비스를 사용할 수 없음 오류가 발생했습니다. 관련 I/O 오류에 대한 예외 세부 정보를 참조하세요.
20004 클라이언트 컴퓨터의 CPU가 오버로드되어 서비스를 사용할 수 없음 오류가 발생했습니다.
20005 클라이언트 컴퓨터의 스레드 풀이 부족하여 서비스를 사용할 수 없음 오류가 발생했습니다. 코드에서 잠재적인 차단 비동기 호출을 확인합니다.
20006 서비스와 클라이언트 간의 연결이 예기치 않게 중단되거나 종료되었습니다.
>= 21001 일시적인 서비스 조건으로 인해 이 서비스를 사용할 수 없음 오류가 발생했습니다. 위 섹션의 조건을 확인하고 재시도 정책이 있는지 확인합니다. 이러한 오류의 양이 성공에 비해 높은 경우 Azure 지원에 문의하세요.

필수 포트가 차단되어 있음

모든 필수 포트가 사용하도록 설정되어 있는지 확인합니다.

클라이언트 측 임시 연결 문제

서비스 사용 불가 예외는 시간 제한을 유발하는 일시적인 연결 문제가 있을 때 나타날 수 있으며 디자인 권장 사항에 따라 안전하게 다시 시도할 수 있습니다.

문제를 해결하려면 요청 시간 초과 문제 해결 단계를 따릅니다.

서비스 중단

Azure 상태를 확인하여 진행 중인 문제가 있는지 확인합니다.

다음 단계

  • Azure Cosmos DB .NET SDK를 사용하고 있는 경우 문제를 진단 및 해결합니다.
  • Azure Cosmos DB Java SDK를 사용할 때 발생하는 문제를 진단하고 해결합니다.
  • .NET의 성능 가이드라인에 대해 알아봅니다.
  • Java의 성능 지침에 대해 알아봅니다.