O que é o emulador do Azure Cosmos DB?
O emulador do Azure Cosmos DB fornece um ambiente local que emula o serviço Azure Cosmos DB projetado para fins de desenvolvimento. Usando o emulador, você pode desenvolver e testar seu aplicativo localmente, sem criar uma assinatura do Azure ou incorrer em custos de serviço. Quando estiver satisfeito com a forma como seu aplicativo está funcionando com o emulador, você poderá fazer a transição para usar uma conta do Azure Cosmos DB com o mínimo de atrito.
Importante
Não recomendamos o uso do emulador para cargas de trabalho de produção.
Diferenças entre o emulador e o serviço de nuvem
O emulador fornece um ambiente em seu espaço de trabalho do desenvolvedor que não é capaz de emular todos os aspetos do serviço Azure Cosmos DB. Aqui estão algumas diferenças importantes na funcionalidade entre o emulador e o serviço de nuvem equivalente.
Importante
O emulador Linux atualmente não suporta máquinas de desenvolvedor rodando em chips Apple Silicon Series ou Microsoft ARM. Uma solução temporária é instalar uma máquina virtual do Windows e executar o emulador nessa plataforma.
- O painel Data Explorer do emulador só é suportado na API para NoSQL e API para MongoDB.
- O emulador suporta apenas a taxa de transferência provisionada. O emulador não suporta taxa de transferência sem servidor.
- O emulador usa uma chave bem conhecida quando é iniciado. Não é possível regenerar a chave para o emulador em execução. Para usar uma chave diferente, você deve iniciar o emulador com a chave personalizada especificada.
- O emulador não pode ser replicado entre regiões geográficas ou várias instâncias. Apenas uma única instância em execução do emulador é suportada. O emulador não pode ser expandido.
- O emulador suporta idealmente até 10 contêineres de tamanho fixo a 400 RU/s ou 5 contêineres de tamanho ilimitado. Teoricamente, você pode criar mais contêineres, mas pode experimentar degradação de desempenho com o emulador.
- O emulador suporta apenas os níveis de consistência Session e Strong . O emulador não é um serviço escalável e não implementa os níveis de consistência. O emulador sinaliza apenas o nível de consistência configurado para fins de teste.
- O emulador restringe o identificador exclusivo de itens a um tamanho de 254 caracteres.
- O emulador suporta um máximo de cinco
JOIN
instruções por consulta.
Os recursos do emulador podem ficar para trás em relação ao ritmo de novos recursos para o serviço de nuvem. Pode haver novos recursos e alterações no serviço de nuvem que tenham um pequeno atraso antes de estarem disponíveis no emulador.
Autenticação
Cada solicitação feita no emulador deve ser autenticada usando uma chave sobre TLS/SSL. O emulador vem com uma única conta configurada para usar uma chave de autenticação conhecida. Por padrão, essas credenciais são as únicas credenciais permitidas para uso com o emulador:
Value | |
---|---|
Ponto final | localhost:8081 |
Chave | C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw== |
Cadeia de ligação | AccountEndpoint=https://localhost:8081/;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==; |
Gorjeta
Com o emulador do Windows (local), você também pode personalizar a chave usada pelo emulador. Para obter mais informações, consulte Argumentos do emulador do Windows.
Importar certificado do emulador
Em alguns casos, você pode querer importar manualmente o certificado TLS/SS do contêiner em execução do emulador para sua máquina host. Esta etapa evita práticas incorretas, como desabilitar a validação TLS/SSL no SDK. Para obter mais informações, consulte Importar certificado.