Explore o Barramento de Serviço do Azure
O Barramento de Serviço do Azure é um agente de mensagens empresarial totalmente gerenciado com filas de mensagens e tópicos de publicação-assinatura. O Service Bus é usado para dissociar aplicativos e serviços. Os dados são transferidos entre diferentes aplicativos e serviços usando mensagens. Uma mensagem é um contêiner decorado com metadados e contém dados. Os dados podem ser qualquer tipo de informação, incluindo dados estruturados codificados com os formatos comuns, como os seguintes: JSON, XML, Apache Avro e Texto Simples.
Alguns cenários comuns de mensagens são:
- Mensagens. Transfira dados comerciais, como ordens de compra ou de venda, diários ou movimentos de inventário.
- Desacoplar aplicações. Melhore a confiabilidade e a escalabilidade de aplicativos e serviços. Cliente e serviço não precisam estar online ao mesmo tempo.
- Tópicos e subscrições. Habilite relações 1:n entre editores e assinantes.
- Sessões de mensagens. Implemente fluxos de trabalho que exijam ordenação ou adiamento de mensagens.
Camadas do Barramento de Serviço
A Service Bus oferece três níveis de preços: Básico, Padrão e Premium. Cada nível foi concebido para servir diferentes casos de uso e requisitos.
Nível básico - Adequado para cenários de mensagens simples com largura de banda baixa e requisitos mínimos de funcionalidades. O nível básico suporta apenas filas (não tópicos e subscrições).
Standard tier - Recomendado para ambientes de desenvolvimento/de teste ou cenários de baixo rendimento em que as aplicações não são sensíveis a limitação de velocidade. Suporta tanto filas como tópicos com subscrições.
Nível premium - Recomendado para cenários de produção que exigem latência previsível e alta taxa de transferência. Oferece isolamento de recursos ao nível da CPU e da memória e funcionalidades avançadas para aplicações críticas.
Para obter mais informações sobre os níveis disponíveis, visite Preços do Service Bus.
Comparação de níveis
| Funcionalidade | Básico | Standard | Premium |
|---|---|---|---|
| Capacidade de processamento | Low | Variable | High |
| Performance | N/A | Latência variável | Desempenho previsível |
| Pricing | Pague conforme o uso | Preços variáveis de utilização | Preço fixo por unidade de mensagens |
| Escalonamento | N/A | N/A | Possibilidade de aumentar e reduzir verticalmente a carga de trabalho |
| Tamanho da mensagem | 256 KB | 256 KB | Até 100 MB |
| Tópicos & Subscrições | Não suportado | Suportado | Suportado |
| Transações | Não suportado | Suportado | Suportado |
| Encaminhamento automático | Não suportado | Suportado | Suportado |
| Sessões de mensagens | Não suportado | Suportado | Suportado |
Funcionalidades avançadas
O Service Bus inclui recursos avançados que permitem resolver problemas de mensagens mais complexos. A tabela a seguir descreve vários desses recursos.
| Funcionalidade | Descrição |
|---|---|
| Sessões de mensagens | Para criar uma garantia FIFO (first-in, first-out) no Service Bus, use sessões. As sessões de mensagens permitem o tratamento exclusivo e ordenado de sequências ilimitadas de mensagens relacionadas. |
| Reencaminhamento automático | O recurso de encaminhamento automático encadeia uma fila ou assinatura para outra fila ou tópico que esteja no mesmo namespace. |
| Fila de mensagens mortas | O Service Bus oferece suporte a uma fila de mensagens mortas (DLQ). Um DLQ contém mensagens que não podem ser entregues a nenhum destinatário. O Service Bus permite remover mensagens do DLQ e inspecioná-las. |
| Entrega agendada | Você pode enviar mensagens para uma fila ou tópico para processamento atrasado. Você pode agendar um trabalho para ficar disponível para processamento por um sistema em um determinado momento. |
| Diferimento de mensagens | Um cliente de fila ou assinatura pode adiar a recuperação de uma mensagem para um momento posterior. A mensagem permanece na fila ou na assinatura, mas é deixada de lado. |
| Transações | Uma transação agrupa duas ou mais operações em um escopo de execução. O Service Bus oferece suporte a operações de agrupamento em uma única entidade de mensagens dentro do escopo de uma única transação. Uma entidade de mensagem pode ser uma fila, tópico ou assinatura. |
| Filtragem e ações | Os subscritores podem definir as mensagens que pretendem receber de um tópico. Estas mensagens são especificadas na forma de uma ou mais regras de subscrição denominadas. |
| Exclusão automática em marcha lenta | A exclusão automática em ociosidade permite especificar um intervalo ocioso após o qual uma fila é excluída automaticamente. A duração mínima é 5 minutos. |
| Deteção de duplicados | Um erro pode fazer com que o cliente tenha uma dúvida sobre o resultado de uma operação de envio. A deteção de duplicados permite que o remetente reenvie a mesma mensagem ou que a fila ou o tópico descarte quaisquer cópias duplicadas. |
| Protocolos de segurança | O Service Bus suporta protocolos de segurança como Assinaturas de Acesso Partilhadas (SAS), Controlo de Acesso Baseado em Funções (RBAC) e identidades geridas para recursos Azure. |
| Recuperação após desastre geográfica | Quando as regiões ou centros de dados do Azure sofrem um período de inatividade, a recuperação após desastre geográfica permite o processamento de dados para continuar a operar numa região ou centro de dados diferente. |
| Segurança | O Service Bus suporta os protocolos AMQP 1.0 e HTTP/REST padrão. |
Cumprimento de normas e protocolos
O principal protocolo de conexão para o Service Bus é o Advanced Messaging Queueing Protocol (AMQP) 1.0, um padrão ISO/IEC aberto. Ele permite que os clientes escrevam aplicativos que funcionam em Service Bus e agentes locais, como ActiveMQ ou RabbitMQ. O guia do protocolo AMQP fornece informações detalhadas caso você queira construir tal abstração.
O Service Bus Premium é totalmente compatível com a API Java/Jakarta EE Java Message Service (JMS) 2.0 .
Bibliotecas de cliente
As bibliotecas de cliente do Service Bus totalmente suportadas estão disponíveis através do SDK do Azure.