Compartilhar via


Visão geral do emulador do Barramento de Serviço do Microsoft Azure

O emulador do Barramento de Serviço do Microsoft Azure oferece uma experiência de desenvolvimento local para o serviço Barramento de Serviço. Você pode usar o emulador para desenvolver e testar o código no 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 latência de rede.
  • Eficiência de custode: com o emulador, você pode testar seus aplicativos sem incorrer em custos de uso de 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 protótipo e teste rapidamente seus aplicativos antes de implantá-los na nuvem.

Observação

O emulador do Barramento de Serviço está disponível sob os Termos de Licença de Software da Microsoft.

O emulador do Barramento de Serviço não é compatível com o Service Bus Explorer de código aberto de propriedade da comunidade

Recursos

O emulador fornece estes recursos:

  • Implantação em contêineres: ele é executado como um contêiner do Docker (baseado em Linux).
  • Compatibilidade entre plataformas: você pode usá-la em qualquer plataforma, incluindo Windows, macOS e Linux.
  • Configurabilidade: Você pode gerenciar o número de entidades do Barramento de Serviço usando a configuração fornecida em JSON.
  • Suporte a streaming: ele dá suporte a mensagens de streaming usando o AMQP (Advanced Message Queuing Protocol).
  • Observabilidade: ele fornece recursos de observabilidade, incluindo o console e o registro em log de arquivos.

Limitações conhecidas

A versão atual do emulador tem as seguintes limitações:

  • Não pode transmitir mensagens usando o protocolo JMS.
  • Entidades particionadas não são compatíveis com o emulador.
  • Não oferece suporte a operações de gerenciamento imediato por meio de um SDK do lado do cliente.

Observação

Após a reinicialização de um 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 do Barramento de Serviço é destinado apenas para fins de desenvolvimento e teste, existem diferenças funcionais entre o emulador e o serviço em nuvem.

O emulador não dá suporte a esses recursos de alto nível:

  • Recursos do Azure, como integração de rede virtual, integração do Microsoft Entra ID, logs de atividades e um portal de interface do usuário
  • Recursos de dimensionamento automático
  • Recursos de recuperação de desastre geográfico
  • Suporte a mensagens grandes
  • Métricas e alertas visuais

Observação

O emulador destina-se exclusivamente a cenários de desenvolvimento e teste. Desencorajamos qualquer tipo de uso em produção. Não fornecemos suporte oficial para o emulador.

Relatar quaisquer problemas ou sugestões no repositório do instalador do GitHub do emulador.

Cotas de uso

Como o serviço em nuvem do Barramento de Serviço, o emulador fornece as seguintes cotas para uso:

Propriedade Valor máximo Configurável pelo usuário dentro dos limites
Número de namespaces com suporte 1 Não
Número de entidades(filas/tópicos) em um namespace 50 Sim
Número de assinaturas por tópico 50 Sim
Número de filtros de correlação por tópico 1000 Sim
Número de conexões simultâneas para o namespace 10 Sim
Número de solicitações de recebimento simultâneas na entidade (fila/Tópico) ou na entidade de assinatura 200 Sim
Tamanho da mensagem 256 KB Não
Tamanho da fila ou do tópico 100 MB Não
Tempo de vida da mensagem 1 h Sim

Alterações de configuração de cota

Por padrão, o emulador é executado com o arquivo de configuração config.json. Você pode configurar as cotas associadas ao Barramento de Serviço editando esse arquivo das seguintes maneiras, com base nas suas necessidades:

  • Entidades: Você pode adicionar mais entidades do Barramento de Serviço de acordo com as cotas com suporte.
  • Registro em log: o emulador dá suporte ao registro em log no arquivo ou console ou ambos. Você pode escolher de acordo com sua preferência pessoal.

Importante

Você deve fornecer alterações na configuração JSON antes de executar o emulador. As alterações não são aplicadas em tempo real. Para que as alterações entrem em vigor, você deve reiniciar o contêiner.

Não é possível renomear o namespace predefinido (name) no arquivo de configuração.

Logs para depuração

Durante o teste, o console ou os logs de arquivos ajudam a depurar falhas inesperadas. Para analisar os logs:

  • 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.

Teste localmente usando o emulador do Barramento de Serviço do Microsoft Azure