Qual è Service Broker in SQL Server?
-
27-09-2019 - |
Domanda
Qual è Service Broker in SQL Server ed è significativo per consentire in un database semplice, non in un database distribuito?
Soluzione
Servizio SQL broker è un meccanismo di estensione che consente di accodare gli eventi per l'elaborazione asincrona.
non c'è nulla di male intrinseco per consentire il broker, se non utilizzato sarà solo di inattività.
Funziona in semplice e DB distribuiti. Un caso d'uso semplice sarebbe una coda di registrazione. Abbiamo usato ad un client di coda messaggi XML per essere elaborati in modo asincrono. Così spingiamo un XML a un InitatorQueue, e poi ha avuto un pull di servizio dalla coda, estrarre alcuni attributi necessari via XPath, e inserirli in una tabella di persistenza nel nostro database.
Altri suggerimenti
Service Broker è un sistema di messaggistica integrato nel motore di db server SQL. Ecco alcuni articoli si potrebbe leggere per vedere come funziona.
centralizzata asincrono Auditing con Service Broker
centralizzata Asynchronous Revisione tra istanze e server con Service Broker
Come risolvere i problemi di Service Broker
Service Broker è un sistema di messaggistica asincrona. Esso permette di inviare un messaggio a una coda. Poi qualche processo qualche lavoratore preleva il messaggio. Non ci sono garanzie circa l'ordine, o quando un messaggio viene prelevato. Ma SQL Server non garantisce che l'elaborazione dei messaggi avviene in modo transazionale.
messaggistica asincrona è una delle architetture più pesanti fuori. Si dovrebbe valutare attentamente se il valore aggiunto è valsa la complessità.