Vantaggi della programmazione con Service Broker

Si applica a:SQL ServerIstanza gestita di SQL di Azure

L'accodamento e la messaggistica asincrona sono attualmente necessarie per molte applicazioni di database. Service Broker offre un framework di messaggistica durevole basato su coda per soddisfare queste esigenze. Tramite l'API Transact-SQL fornita da Service Broker, è possibile sviluppare in modo semplice servizi per la gestione dei requisiti delle applicazioni in termini di accodamento o di comunicazioni asincrone.

Alcuni dei vantaggi della programmazione con Service Broker sono:

  • Sviluppo flessibile: È possibile scrivere i programmi usati in una singola applicazione distribuita in più lingue. Ogni programma fornisce la funzionalità di ogni componente dell'applicazione distribuita.

  • Sicurezza migliorata: È possibile esprimere i requisiti di sicurezza tramite certificati, in modo che i componenti dell'applicazione non debbano condividere lo stesso contesto di sicurezza. Service Broker usa le funzionalità di sicurezza di SQL Server per consentire di proteggere facilmente le applicazioni.

  • Elaborazione delle transazioni: l'elaborazione dei messaggi avviene all'interno delle transazioni di SQL Server in modo da assicurare l'integrità dei dati. Service Broker supporta la messaggistica transazionale remota tramite una connessione standard al database.

  • Ordinamento garantito: Service Broker offre garanzie solide per quanto riguarda il recapito e l'elaborazione di un set correlato di messaggi esattamente una volta e nell'ordine, quindi non è necessario alcun codice aggiuntivo per fornire questa funzionalità.

  • Recapito affidabile: Tutti i dati necessari per una conversazione o un set di comunicazioni correlate tra due o più servizi vengono resi persistenti in SQL Server. Service Broker permette il clustering e il mirroring del database. Una conversazione può essere mantenuta tramite riavvii di sistema, failover del server, interruzioni di rete e così via senza errori o perdita di dati.

  • Scalabilità migliorata: il routing di Service Broker recapita i messaggi in base al nome del servizio, piuttosto che all'indirizzo di rete del computer in cui il servizio è in esecuzione. In questo modo è possibile installare un'applicazione in più computer, senza modificare il codice dell'applicazione.

  • Possibilità di usare le conoscenze esistenti: Service Broker usa Transact-SQL per la creazione di oggetti. Le applicazioni che usano Service Broker sono spesso implementate in Transact-SQL o nei linguaggi compatibili con Microsoft .NET Framework. Non è necessario apprendere una nuova lingua per creare applicazioni di Service Broker.