Azure Service Bus — Implementando o Publisher (Publicador) — Parte 2

Renicius Pagotto Fostaini
3 min readSep 3, 2020

--

Olá pessoal!

No post de hoje, vamos entrar na segunda parte da nossa série onde vamos implementar o publicador (publisher) de mensagens para uma fila e para um tópico do Azure Service Bus.

Caso você não tenha lido o post anterior de introdução a mensageria e ao Azure Service Bus, clique aqui.

Vamos dar ínicio a nossa implementação criando um projeto ASP.NET Core Web Application com o template de API. Caso queira saber mais sobre API e sua utilização, nesse post eu explico como implementar.

Após as finalizado a criação do projeto, instale o seguinte pacote nuget

Essa biblioteca disponibilizará todas as implementaçãoes necessárias para conexão e envio de mensagens para a mensageria.

Vamos criar uma pasta e uma classe dentro da pasta no qual utilizaremos como uma ViewModel / DTO para receber informações das requisições.

Agora criaremos a nossa Controller que tem a função de publicar as mensagens na fila.

Reparem que no construtor da controller, recebemos a connection string do Azure Service Bus via injeção do IConfiguration e que esta armazenada no appsettings.json. A connection string será utilizado para a conexão e publicação das mensagens na fila e no tópico.

Tanto a implementação do envio de mensagens para a fila como para o envio ao tópico, são quase idênticas, diferenciando apenas o objeto de conexão para cada contexto, ou seja, o QueueClient e o TopicClient.

No arquivo de configuração da aplicação (appsettings.json) precisamos adicionar o campo AzureBusConnectionString que receberá a connection string do Azure Service Bus.

Para obter a connection string do Azure Service Bus, acesse o Portal do Azure, vá até o recurso do Azure Service Bus que provisionamos no post anterior e navegue nas opção Shared access policies -> RootManageSharedAccessKey, conforme mostra a imagem abaixo

Na tela, possuímos duas opções de connection string fornecida pela plataforma, escolha uma delas e adicione no appsettings.json no campo AzureBusConnectionString.

Com tudo finalizado, nossa aplicação está pronta para ser executada

Na execução da aplicação, é fornecido dois endpoints para utilização, um para publicar mensagens na fila e outro para publicar mensagens no tópico.

POST api/product/queue
POST api/product/topic

Para realizar as requisições, você pode utilizar tanto o Postman como o Insomnia.

Ficou com dúvida? Deixe nos comentários

[Parte 3] — Azure Service Bus — Implementando os Consumers (Consumidores) — Parte 3 | by Renicius Pagotto Fostaini | Medium

Até o próximo post!

--

--

Renicius Pagotto Fostaini
Renicius Pagotto Fostaini

Written by Renicius Pagotto Fostaini

Solutions Architect | Speaker | Community Manager

No responses yet