DevSecOps

14 set, 2017

Soluções Azure: Service BUS – Recebimento Dados Lote

Publicidade

As filas do armazenamento, que fazem parte da infraestrutura do armazenamento do Azure, apresentam uma interface Get/Put/Peek baseada em REST, oferecendo um sistema de mensagens confiável e persistente em e entre serviços.

As filas do Barramento de Serviço fazem parte de uma infraestrutura mais ampla do sistema de mensagens do Azure, que dá suporte ao enfileiramento, bem como a publicação/assinatura e outros padrões de integração avançados.

Embora ambas as tecnologias de enfileiramento coexistam, as filas do armazenamento foram introduzidas primeiro, como um mecanismo de armazenamento de filas dedicado criado com base nos serviços de armazenamento do Azure Storage. As filas do Barramento de Serviço são criadas com base na infraestrutura mais ampla do “sistema de mensagens”, desenvolvida para integrar aplicativos ou componentes de aplicativo que podem incluir vários protocolos de comunicação, contratos de dados, domínios confiáveis e/ou ambientes de rede.

https://azure.microsoft.com/pt-br/services/batch/

Código da aplicação:

using System;
using Microsoft.ServiceBus;
using Microsoft.ServiceBus.Messaging;

namespace PrimeServiceBusRecebeLoteApp
{
    class Program
    {
        static void Main(string[] args)
        {
            // váriavel contendo a string de conexão do servicebus
            var connectionString = "Endpoint=sb:// /;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=GcVBojfFiWK/bZ+mvXFA1Mc6wp25QW2k2eT8c7w4EDs=";
            // variável recebendo o nome da fila 
            var queueName = "nsqueuetest1";

            // variável client que vai criar a conexão com a fila
            var client = QueueClient.CreateFromConnectionString(connectionString, queueName);

            // Recebendo  a mensagem 
            client.OnMessage(message =>
            {
                Console.WriteLine(String.Format("Corpo da mensagem: {0}", message.GetBody<String>()));
                Console.WriteLine(String.Format("Código da mensagem: {0}", message.MessageId));
            });

            // Sair do programa
            Console.WriteLine("Pressione Enter pra sair do programa.");
            Console.ReadLine();
        }
    }
}