Co to jest emulator usługi Azure Cosmos DB?
Emulator usługi Azure Cosmos DB udostępnia środowisko lokalne, które emuluje usługę Azure Cosmos DB przeznaczoną do celów programistycznych. Za pomocą emulatora możesz opracowywać i testować aplikację lokalnie bez tworzenia subskrypcji platformy Azure ani ponoszenia kosztów usług. Gdy aplikacja działa z emulatorem, możesz przejść do korzystania z konta usługi Azure Cosmos DB z minimalnym tarciem.
Ważne
Nie zalecamy używania emulatora dla obciążeń produkcyjnych.
Napiwek
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żne
Emulator systemu Linux obecnie nie obsługuje maszyn deweloperskich działających w serii krzemowej firmy Apple ani mikroukładów microsoft ARM. Tymczasowe obejście polega na zainstalowaniu maszyny wirtualnej z systemem Windows i uruchomieniu emulatora na tej platformie.
Alternatywnie możesz użyć nowego emulatora usługi Azure Cosmos DB opartego na systemie Linux (wersja zapoznawcza).
- Okienko Eksplorator danych emulatora jest obsługiwane tylko w interfejsie API dla noSQL i interfejsu API dla bazy danych 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.
- Emulatora nie można replikować między regionami geograficznymi ani wieloma wystąpieniami. Obsługiwane jest tylko jedno uruchomione wystąpienie 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 ograniczenia unikatowego identyfikatora 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.
Uwierzytelnianie
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:
Wartość | |
---|---|
Punkt końcowy | localhost:8081 |
Klawisz | C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw== |
Parametry połączenia | AccountEndpoint=https://localhost:8081/;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==; |
Napiwek
Za pomocą emulatora systemu Windows (lokalnego) można również dostosować klucz używany przez emulator. Aby uzyskać więcej informacji, zobacz Argumenty emulatora systemu 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.