Implementando a ativação interna

Este tutorial destina-se aos usuários que não têm experiência com o Service Broker, mas que têm familiaridade com conceitos de banco de dados e instruções Transact-SQL. Ele ajudará os novos usuários a começar mostrando como implementar um procedimento armazenado de ativação interna para processar mensagens do Service Broker.

O que você aprenderá

Este tutorial mostra como criar os objetos de banco de dados que são necessários para oferecer suporte a uma conversação única de solicitação-resposta do Service Broker usando um procedimento armazenado de ativação interna. Em seguida, uma conversação será iniciada e usada para transmitir mensagens.

Cada conversação Service Broker tem duas extremidades: o iniciador de conversação e o destino. Em uma conversação de resposta-solicitação, uma mensagem de solicitação é enviada do iniciador ao destino, que retorna uma mensagem de resposta. A ativação interna do Service Broker pode ser usada para executar um procedimento armazenado sempre que há mensagens para processamento. O Service Broker poderá executar várias cópias do procedimento armazenado se muitas mensagens estiverem sendo transmitidas. Este tutorial mostra como criar um procedimento armazenado que recebe as mensagens solicitadas no destino e como configurar o destino para usar a ativação interna para executar o procedimento armazenado.

As seguintes tarefas serão realizadas:

  • Crie um serviço e uma fila para o serviço de destino e um serviço e uma fila para o iniciador.

  • Crie um tipo de mensagem de solicitação e um tipo de mensagem de resposta.

  • Crie um contrato especificando que as mensagens de solicitação passem do iniciador para o destino, e que as mensagens de resposta passem do destino para o iniciador.

  • Crie um procedimento armazenado que receba mensagens de solicitação da fila de destino e envie mensagens de resposta ao iniciador.

  • Altere a fila de destino para habilitar a ativação interna do procedimento armazenado.

Em seguida, uma conversação simples será realizada:

  • Inicie a conversação.

  • Envie uma solicitação do iniciador para o destino.

  • O Service Broker ativará o procedimento armazenado. O procedimento armazenado receberá a solicitação no destino e enviará uma resposta ao iniciador.

  • Receba a resposta no iniciador.

  • Termine o lado do iniciador da conversação.

  • O Service Broker ativará o procedimento armazenado uma segunda vez e ele terminará o lado de destino da conversação.

As mensagens não são transmitidas para toda a rede para conversações que tenham duas extremidades na mesma instância do Mecanismo de Banco de Dados. A segurança e as permissões do Mecanismo de Banco de Dados restringem o acesso a princípios autorizados. A criptografia de rede nesse cenário não é necessária.

Este tutorial divide-se em três lições:

Requisitos

Para concluir este tutorial, familiarize-se com a linguagem do Transact-SQL e com a forma de uso do Editor de Consultas Mecanismo de Banco de Dados no SQL Server Management Studio. É preciso ser membro das funções de banco de dados fixas db_ddladmin ou db_owner para o banco de dados de exemplo AdventureWorks ou para a função fixa de banco de dados sysadmin.

O sistema deverá ter o seguinte instalado: