Co to jest emulator Azure Cosmos DB?

Emulator Azure Cosmos DB udostępnia środowisko lokalne emulujące usługę Azure Cosmos DB przeznaczoną do celów programistycznych. Za pomocą emulatora możesz opracowywać i testować aplikację lokalnie bez tworzenia subskrypcji Azure ani ponoszenia kosztów usług. Kiedy jesteś zadowolony z tego, jak aplikacja działa z emulatorem, możesz płynnie przejść do korzystania z konta Azure Cosmos DB.

Ważna

Nie zalecamy używania emulatora dla obciążeń produkcyjnych.

Wskazówka

Odwiedź naszą nową galerię przykładów , aby zapoznać się z najnowszymi przykładami dotyczącymi tworzenia nowych aplikacji

Różnice między emulatorem a usługą w chmurze

Emulator udostępnia środowisko w obszarze roboczym dewelopera, które nie może emulować każdego aspektu usługi Azure Cosmos DB. Poniżej przedstawiono kilka kluczowych różnic w funkcjonalności między emulatorem a równoważną usługą w chmurze.

Ważna

Emulator systemu Linux obecnie nie obsługuje maszyn deweloperskich działających na układach Apple Silicon ani na chipach Microsoft ARM. Tymczasowym obejściem jest zainstalowanie Windows maszyny wirtualnej i uruchomienie emulatora na tej platformie.

Alternatywnie możesz użyć nowego emulatora Azure Cosmos DB Linux (wersja zapoznawcza).

  • Okienko Data Explorer emulatora jest obsługiwane tylko w interfejsie API dla NoSQL i dla MongoDB.
  • Emulator obsługuje tylko aprowizowaną przepływność. Emulator nie obsługuje przepływności bezserwerowej .
  • Emulator używa dobrze znanego klucza podczas uruchamiania. Nie można ponownie wygenerować klucza dla uruchomionego emulatora. Aby użyć innego klucza, należy uruchomić emulator z określonym kluczem niestandardowym.
  • Emulacja nie może być replikowana w różnych regionach geograficznych ani w wielu instancjach. Obsługiwana jest tylko jedna działająca instancja emulatora. Nie można skalować emulatora w poziomie.
  • Emulator idealnie obsługuje maksymalnie 10 kontenerów o stałym rozmiarze przy 400 RU/s lub 5 kontenerach o nieograniczonym rozmiarze. Teoretycznie można utworzyć więcej kontenerów, ale może wystąpić spadek wydajności w emulatorze.
  • Emulator obsługuje tylko poziomy sesji i silnej spójności. Emulator nie jest skalowalną usługą i nie implementuje poziomów spójności. Emulator flaguje tylko skonfigurowany poziom spójności na potrzeby testowania.
  • Emulator ogranicza unikatowy identyfikator elementów do rozmiaru 254 znaków.
  • Emulator obsługuje maksymalnie pięć JOIN instrukcji na zapytanie.

Funkcje emulatora mogą opóźnić tempo nowych funkcji usługi w chmurze. Potencjalnie mogą istnieć nowe funkcje i zmiany w usłudze w chmurze, które mają niewielkie opóźnienie, zanim będą dostępne w emulatorze.

Authentication

Każde żądanie wykonane względem emulatora musi być uwierzytelnione przy użyciu klucza za pośrednictwem protokołu TLS/SSL. Emulator jest dostarczany z jednym kontem skonfigurowanym do używania dobrze znanego klucza uwierzytelniania. Domyślnie te poświadczenia są jedynymi poświadczeniami dozwolonymi do użycia z emulatorem:

Value
Punkt końcowy localhost:8081
Klucz C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==
Parametry połączenia AccountEndpoint=https://localhost:8081/;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==;

Wskazówka

Za pomocą emulatora Windows (lokalnego) można również dostosować klucz używany przez emulator. Aby uzyskać więcej informacji, zobacz argumenty emulatora Windows.

Importowanie certyfikatu emulatora

W niektórych przypadkach możesz ręcznie zaimportować certyfikat TLS/SS z uruchomionego kontenera emulatora do maszyny hosta. Ten krok pozwala uniknąć złych rozwiązań, takich jak wyłączanie weryfikacji protokołu TLS/SSL w zestawie SDK. Aby uzyskać więcej informacji, zobacz importowanie certyfikatu.

Następne kroki