Condividi tramite


Implementazione dell'attivazione interna

Questa esercitazione è destinata agli utenti che non hanno familiarità con Service Broker, ma che conoscono i concetti relativi ai database e le istruzioni Transact-SQL. Consentirà ai nuovi utenti di iniziare a implementare una stored procedure ad attivazione interna per elaborare i messaggi di Service Broker.

Lezioni dell'esercitazione

In questa esercitazione verranno descritte le procedure per creare gli oggetti di database necessari per supportare una semplice conversazione richiesta-risposta di Service Broker utilizzando una stored procedure ad attivazione interna. Si avvierà quindi una conversazione, che verrà utilizzata per trasmettere messaggi.

Ogni conversazione di Service Broker avviene tra due parti: l'initiator e la destinazione della conversazione. In una conversazione richiesta-risposta, un messaggio di richiesta viene inviato dall'initiator alla destinazione, che restituisce un messaggio di risposta. L'attivazione interna di Service Broker può essere utilizzata per eseguire una stored procedure quando sono disponibili messaggi da elaborare. Service Broker è in grado di eseguire più copie della stored procedure se i messaggi trasmessi sono numerosi. In questa esercitazione viene illustrato come creare una stored procedure che riceve i messaggi di richiesta nella destinazione e come configurare la destinazione per l'utilizzo dell'attivazione interna per eseguire la stored procedure.

In questa esercitazione verranno eseguite le attività seguenti:

  • Creazione di un servizio e una coda per la destinazione e di un servizio e una coda per l'initiator.

  • Creazione di un tipo di messaggio di richiesta e di un tipo di messaggio di risposta.

  • Creazione di un contratto che specifica che i messaggi di richiesta vengono trasmessi dall'initiator alla destinazione e che i messaggi di risposta vengono trasmessi dalla destinazione all'initiator.

  • Creazione di una stored procedure che riceve i messaggi di richiesta dalla coda di destinazione e invia i messaggi di risposta all'initiator.

  • Modifica della coda di destinazione per abilitare l'attivazione interna della stored procedure.

Verrà quindi eseguita una conversazione semplice:

  • Avvio della conversazione.

  • Invio di una richiesta dall'initiator alla destinazione.

  • Service Broker attiverà quindi la stored procedure, che riceverà la richiesta nella destinazione e invierà una risposta all'initiator.

  • Ricezione della risposta nell'initiator.

  • Termine del lato initiator della conversazione.

  • Service Broker attiverà una seconda volta la stored procedure, che terminerà il lato destinazione della conversazione.

I messaggi non vengono trasmessi in rete per conversazioni in cui entrambe le parti si trovano nella stessa istanza di Motore di database. La sicurezza e le autorizzazioni di Motore di database limitano l'accesso alle entità autorizzate. La crittografia di rete non è necessaria per questo scenario.

L'esercitazione è suddivisa in tre lezioni:

Requisiti

Per completare questa esercitazione, è consigliabile avere familiarità con il linguaggio Transact-SQL e con le modalità di utilizzo dell'editor di query Motore di database in SQL Server Management Studio. È inoltre necessario essere un membro del ruolo predefinito del database db_ddladmin o db_owner per il database di esempio AdventureWorks2008R2 o del ruolo predefinito del server sysadmin.

È necessario che nel sistema siano installati i componenti seguenti: