Partilhar via


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

O emulador do Barramento de Serviço do Azure oferece uma experiência de desenvolvimento local para o serviço do Barramento de Serviço. 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.

Observação

O emulador do barramento de serviço está disponível sob os Termos de Licença para Software Microsoft.

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

Caraterísticas

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 entidades do Service Bus usando a configuração fornecida pelo JSON.
  • Suporte de streaming: Suporta streaming de mensagens usando o protocolo AMQP (Advanced Message Queuing Protocol).
  • 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:

  • Ele não pode transmitir mensagens usando o protocolo JMS.
  • As entidades particionadas não são compatíveis com o emulador.
  • Ele não suporta operações de gerenciamento imediatas por meio de um SDK do lado do cliente.
  • Não há suporte para Web Sockets AMQP. O AMQP TCP é o único tipo de transporte suportado.

Observação

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 do Service Bus 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
  • Recursos de dimensionamento automático
  • Recursos de recuperação de desastres geográficos
  • Suporte a mensagens grandes
  • Métricas visuais e alertas

Observação

O emulador destina-se a cenários de desenvolvimento e teste, especificamente para casos de uso de teste sequencial. O emulador do Service Bus não deve ser usado para cargas de trabalho de produção, pois não oferece um SLA.

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 do Service Bus, o emulador fornece as seguintes cotas para uso:

Propriedade Valor máximo Configurável pelo utilizador dentro de limites
Número de namespaces suportados 1 Não
Número de entidades (filas/tópicos) em um namespace 50 Sim
Número de subscrições por tópico 50 Sim
Número de filtros de correlação por tópico 1000 Sim
Número de filtros SQL 20 Sim
Comprimento da condição do filtro ou da cadeia de caracteres de ação da regra 1024 Sim
Número de expressões por ação de regra 32 Sim
Número de conexões simultâneas com namespace 10 Sim
Número de solicitações de recebimento simultâneas na entidade (fila/Tópico) ou 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 1h Sim

Alterações na configuração da cota

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

  • Entidades: Você pode adicionar mais entidades do Service Bus de acordo com as cotas suportadas.
  • Registo: O emulador suporta o registo em um console, em um arquivo ou em 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 aplicadas de imediato. 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.
  • Registos de ficheiros: No contentor, vá para /home/app/EmulatorLogs.

Teste localmente através do emulador do Service Bus do Azure