Code

Si applica a:SQL ServerIstanza gestita di SQL di Azure

Le code vengono utilizzate per archiviare i messaggi. Quando Service Broker riceve un messaggio per un servizio, Service Broker inserisce il messaggio nella coda del servizio. Per ottenere i messaggi inviati al servizio, un'applicazione riceve messaggi dalla coda. Service Broker gestisce le code e permette di visualizzare le code in una forma simile a una tabella.

Ogni servizio è associato a una coda. Quando viene recapitato un messaggio per un servizio, Service Broker lo inserisce nella coda associata al servizio.

Ogni messaggio è una riga nella coda. La riga riporta il contenuto del messaggio e le informazioni sul tipo di messaggio, il servizio di destinazione del messaggio, il contratto che segue il messaggio, la convalida eseguita sul messaggio, la conversazione di cui fa parte il messaggio e le informazioni interne alla coda. Un'applicazione usa le informazioni nella riga del messaggio per identificare ogni messaggio in modo univoco ed elaborare il messaggio in modo appropriato.

Le applicazioni ricevono i messaggi dalla coda per il servizio. Per ogni conversazione, le code restituiscono messaggi nell'ordine in cui il mittente ha inviato il messaggio. Tutti i messaggi restituiti da una singola operazione di ricezione fanno parte di conversazioni appartenenti allo stesso gruppo di conversazioni. In effetti, una coda contiene set di messaggi correlati, uno per ogni gruppo di conversazioni. La coda restituisce un set di messaggi correlati ogni volta che l'applicazione esegue un'operazione di ricezione dalla coda. L'applicazione può scegliere di ricevere messaggi per una conversazione specifica o per un gruppo di conversazioni specifico. Le code non restituiscono messaggi rigorosamente in ordine first-in-first-out, restituiscono invece messaggi per ogni conversazione nell'ordine in cui sono stati inviati i messaggi. Quindi, un'applicazione non deve includere il codice per recuperare l'ordine originale dei messaggi.

Una coda può essere associata a una stored procedure. Quando nella coda sono presenti messaggi da elaborare, SQL Server attiva la stored procedure. SQL Server può avviare più di un'istanza della stored procedure, fino al limite massimo configurato. Per altre informazioni, vedere Attivazione di Service Broker.

Vedi anche