Visão geral do emulador de Hubs de Eventos do Azure
O emulador de Hubs de Eventos do Azure oferece uma experiência de desenvolvimento local para o serviço Hubs de Eventos. Você pode usar o emulador para desenvolver e testar o código em relação ao serviço isoladamente, livre de interferência na nuvem.
Benefícios
As principais vantagens de usar o emulador são:
- Desenvolvimento local: O emulador fornece uma experiência de desenvolvimento local, para que você possa trabalhar offline e evitar a latência da rede.
- Eficiência de custos: Com o emulador, você pode testar seus aplicativos sem incorrer em custos de uso da nuvem.
- Ambiente de teste isolado: você pode testar seu código isoladamente para ajudar a garantir que outras atividades na nuvem não afetem os testes.
- Loop de desenvolvimento interno otimizado: você pode usar o emulador para prototipar e testar rapidamente seus aplicativos antes de implantá-los na nuvem.
Nota
O emulador de Hubs de Eventos está disponível sob os Termos de Licença para Software Microsoft.
Funcionalidades
O emulador fornece estes recursos:
- Implantação em contêiner: é executado como um contêiner Docker (baseado em Linux).
- Compatibilidade entre plataformas: Você pode usá-lo em qualquer plataforma, incluindo Windows, macOS e Linux.
- Configurabilidade: Você pode gerenciar o número de hubs de eventos, partições e outras entidades usando a configuração fornecida pelo JSON.
- Suporte de streaming: Suporta streaming de eventos usando Kafka e Advanced Message Queuing Protocol (AMQP).
- Observabilidade: Ele fornece recursos de observabilidade, incluindo console e registro de arquivos.
Limitações conhecidas
A versão atual do emulador tem as seguintes limitações:
Ao usar o Kafka, apenas as APIs de produtor e consumidor são compatíveis com o emulador de Hubs de Eventos.
Na configuração Kafka,
securityProtocol
esaslmechanism
só pode ter os seguintes valores:SecurityProtocol = SecurityProtocol.SaslPlaintext, SaslMechanism = SaslMechanism.Plain
Ele não suporta operações de gerenciamento imediatas por meio de um SDK do lado do cliente.
Nota
Após uma reinicialização do contêiner, os dados e as entidades não persistem no emulador.
Diferenças em relação ao serviço de nuvem
Como o emulador de Hubs de Eventos destina-se apenas para fins de desenvolvimento e teste, há diferenças funcionais entre o emulador e o serviço de nuvem.
O emulador não suporta estes recursos de alto nível:
- Recursos do Azure, como integração de rede virtual, integração de ID do Microsoft Entra, logs de atividades e um portal de interface do usuário
- Captura de Hubs de Eventos
- Recursos de governança de recursos, como grupos de aplicativos
- Recursos de dimensionamento automático
- Recursos de recuperação de desastres geográficos
- Integração do registro de esquema
- Métricas visuais e alertas
Nota
O emulador destina-se exclusivamente a cenários de desenvolvimento e teste. Desencorajamos qualquer tipo de uso de produção. Nós não fornecemos nenhum suporte oficial para o emulador.
Relate quaisquer problemas ou sugestões no repositório do instalador do GitHub do emulador.
Quotas de utilização
Como o serviço de nuvem Hubs de Eventos, o emulador fornece as seguintes cotas para uso:
Property | valor | Configurável pelo utilizador dentro de limites |
---|---|---|
Número de namespaces suportados | 1 | Não |
Número máximo de hubs de eventos em um namespace | 10 | Sim |
Número máximo de grupos de consumidores em um hub de eventos | 20 | Sim |
Número máximo de partições em um hub de eventos | 32 | Sim |
Tamanho máximo de um evento que está sendo publicado em um hub de eventos (lote/não lote) | 1 MB | Não |
Tempo mínimo de retenção de eventos | 1 hora | Não |
Alterações na configuração da cota
Por padrão, o emulador é executado com o arquivo de configuração config.json . Você pode configurar as cotas associadas aos Hubs de Eventos editando esse arquivo das seguintes maneiras, com base em suas necessidades:
- Entidades: Você pode adicionar mais entidades (hubs de eventos), com um número personalizado de partições e grupos de consumidores, de acordo com as cotas suportadas.
- Log: O emulador suporta o registro em log em um console, em um arquivo ou ambos. Você pode escolher de acordo com sua preferência pessoal.
Importante
Você deve fornecer quaisquer alterações na configuração JSON antes de executar o emulador. As mudanças não são honradas na hora. Para que as alterações entrem em vigor, reinicie o contêiner.
Não é possível renomear o namespace predefinido (name
) no arquivo de configuração.
Logs para depuração
Durante os testes, os logs de console ou arquivo ajudam a depurar falhas inesperadas. Para rever os registos:
- Logs do console: na interface do usuário da área de trabalho do Docker, selecione o nome do contêiner.
- Logs de arquivos: No contêiner, vá para /home/app/EmulatorLogs.
Conteúdos relacionados
Teste localmente usando o emulador de Hubs de Eventos do Azure