다음을 통해 공유


Azure Cosmos DB 에뮬레이터란?

Azure Cosmos DB 에뮬레이터는 개발 목적으로 설계된 Azure Cosmos DB 서비스를 에뮬레이트하는 로컬 환경을 제공합니다. 에뮬레이터를 사용하면 Azure 구독을 구입하거나 비용을 발생시키지 않고도 로컬에서 애플리케이션을 테스트할 수 있습니다. 애플리케이션이 에뮬레이터에서 작동하는 방식에 만족하면 마찰을 최소화하면서 Azure Cosmos DB 계정을 사용하도록 전환할 수 있습니다.

Important

프로덕션 워크로드에는 에뮬레이터를 사용하지 않는 것이 좋습니다.

새 앱을 빌드하기 위한 최신 샘플은 새 샘플 갤러리 를 방문하세요.

에뮬레이터와 클라우드 서비스의 차이점

에뮬레이터는 Azure Cosmos DB 서비스의 모든 측면을 에뮬레이트할 수 없는 환경을 개발자 작업 영역에 제공합니다. 다음은 에뮬레이터와 동등한 클라우드 서비스 간의 기능상의 몇 가지 주요 차이점입니다.

Important

Linux 에뮬레이터는 현재 Apple 실리콘 시리즈 또는 Microsoft ARM 칩에서 실행되는 개발자 컴퓨터를 지원하지 않습니다. 임시 해결 방법은 Windows 가상 머신을 설치하고 해당 플랫폼에서 에뮬레이터를 실행하는 것입니다.

또는 새 Linux 기반 Azure Cosmos DB 에뮬레이터(미리 보기)를 사용할 수 있습니다.

  • 에뮬레이터의 데이터 탐색기 창은 API for NoSQL 및 API for MongoDB에서만 지원됩니다.
  • 에뮬레이터는 프로비전 처리량만 지원합니다. 에뮬레이터는 서버리스 처리량을 지원하지 않습니다.
  • 에뮬레이터는 시작될 때 잘 알려진 키를 사용합니다. 실행 중인 에뮬레이터의 키는 다시 생성할 수 없습니다. 다른 키를 사용하려면 지정된 사용자 지정 키를 사용하여 에뮬레이터를 시작해야 합니다.
  • 에뮬레이터는 지리적 지역이나 여러 인스턴스에 걸쳐 복제할 수 없습니다. 실행 중인 에뮬레이터 인스턴스는 하나만 지원됩니다. 에뮬레이터는 크기 조정할 수 없습니다.
  • 에뮬레이터는 400RU/s 또는 5개의 무제한 컨테이너에서 최대 10개의 고정 크기 컨테이너를 지원하는 것이 좋습니다. 이론적으로는 더 많은 컨테이너를 만들 수 있지만 에뮬레이터를 사용하면 성능이 저하됩니다.
  • 에뮬레이터는 세션강력 일관성 수준만 지원합니다. 에뮬레이터는 확장 가능한 서비스가 아니며 실제로 일관성 수준을 구현하지 않습니다. 에뮬레이터는 테스트 목적으로 구성된 일관성 수준에만 플래그를 지정합니다.
  • 에뮬레이터는 항목의 고유 식별자를 254자 크기로 제한합니다.
  • 에뮬레이터는 쿼리당 최대 5개의 JOIN 문을 지원합니다.

에뮬레이터의 기능은 클라우드 서비스의 새로운 기능보다 속도가 느릴 수 있습니다. 클라우드 서비스에는 잠재적으로 새로운 기능과 변경 내용이 있을 수 있지만 에뮬레이터에서 사용할 수 있기 전에 약간의 지연이 있을 수 있습니다.

인증

에뮬레이터에 대한 모든 요청은 TLS/SSL을 통한 키를 사용하여 인증되어야 합니다. 에뮬레이터는 잘 알려진 인증 키를 사용하도록 구성된 단일 계정과 함께 제공됩니다. 기본적으로 다음 자격 증명은 에뮬레이터와 함께 사용하도록 허용된 유일한 자격 증명입니다.

엔드포인트 localhost:8081
Key C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==
연결 문자열 AccountEndpoint=https://localhost:8081/;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==;

Windows(로컬) 에뮬레이터를 사용하면 에뮬레이터에서 사용하는 키를 사용자 지정할 수도 있습니다. 자세한 내용은 Windows 에뮬레이터 인수를 참조하세요.

에뮬레이터 인증서 가져오기

경우에 따라 에뮬레이터의 실행 컨테이너에서 호스트 컴퓨터로 TLS/SS 인증서를 수동으로 가져오고 싶을 수도 있습니다. 이 단계는 SDK에서 TLS/SSL 유효성 검사를 사용하지 않도록 설정하는 것과 같은 나쁜 사례를 방지합니다. 자세한 내용은 인증서 가져오기를 참조하세요.

다음 단계