Что такое эмулятор Azure Cosmos DB?

Эмулятор Azure Cosmos DB предоставляет локальную среду, которая эмулирует службу Azure Cosmos DB, предназначенную для целей разработки. С помощью эмулятора вы можете разрабатывать и тестировать приложение локально, не создавая подписку Azure или не выполняя затраты на обслуживание. Когда вы удовлетворены тем, как приложение работает с эмулятором, вы можете перейти на использование учетной записи Azure Cosmos DB с минимальными трениями.

Внимание

Не рекомендуется использовать эмулятор для рабочих нагрузок.

Различия между эмулятором и облачной службой

Эмулятор предоставляет среду в рабочей области разработчика, которая не может эмулировать каждый аспект службы Azure Cosmos DB. Ниже приведены несколько ключевых различий в функциональных возможностях эмулятора и эквивалентной облачной службы.

Внимание

Эмулятор Linux в настоящее время не поддерживает компьютеры разработчиков, работающие в серии Apple силиконовой серии или микросхем Microsoft ARM. Временное решение заключается в установке виртуальной машины Windows и запуске эмулятора на этой платформе.

  • Область обозревателя данных эмулятора поддерживается только в API noSQL и API для MongoDB.
  • Эмулятор поддерживает только подготовленную пропускную способность. Эмулятор не поддерживает бессерверную пропускную способность.
  • Эмулятор использует известный ключ при запуске. Невозможно повторно создать ключ для запущенного эмулятора. Чтобы использовать другой ключ, необходимо запустить эмулятор с указанным пользовательским ключом.
  • Эмулятор не может быть реплицирован в географических регионах или нескольких экземплярах. Поддерживается только один запущенный экземпляр эмулятора. Эмулятор не может быть масштабирован.
  • Эмулятор в идеале поддерживает до 10 контейнеров фиксированного размера в 400 ЕЗ/с или 5 неограниченного размера контейнеров. Теоретически можно создать больше контейнеров, но вы можете столкнуться с снижением производительности с помощью эмулятора.
  • Эмулятор поддерживает только уровни согласованности сеанса и строгой согласованности. Эмулятор не является масштабируемой службой и фактически не реализует уровни согласованности. Эмулятор помечает только настроенный уровень согласованности для тестирования.
  • Эмулятор ограничивает уникальный идентификатор элементов размером 254 символов.
  • Эмулятор поддерживает не более пяти JOIN инструкций на запрос.

Возможности эмулятора могут отстать от темпа новых функций облачной службы. Возможно, в облачной службе могут быть новые функции и изменения, которые имеют небольшую задержку, прежде чем они будут доступны в эмуляторе.

Проверка подлинности

Каждый запрос, сделанный в эмуляторе, должен проходить проверку подлинности с помощью ключа по протоколу TLS/SSL. Эмулятор поставляется с одной учетной записью, настроенной для использования известного ключа проверки подлинности. По умолчанию эти учетные данные являются единственными учетными данными, разрешенными для использования с эмулятором:

Значение
Конечная точка localhost:8081
Ключ C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==
Строка соединения AccountEndpoint=https://localhost:8081/;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==;

Совет

С помощью эмулятора Windows (локального) можно также настроить ключ, используемый эмулятором. Дополнительные сведения см . в аргументах эмулятора Windows.

Импорт сертификата эмулятора

В некоторых случаях может потребоваться вручную импортировать сертификат TLS/SS из запущенного контейнера эмулятора на главный компьютер. Этот шаг позволяет избежать неправильных методов, таких как отключение проверки TLS/SSL в пакете SDK. Дополнительные сведения см. в разделе "Импорт сертификата".

Следующий шаг