Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
van toepassing op:SQL Server
Azure SQL Managed Instance
Deze zelfstudie is bedoeld voor gebruikers die geen ervaring hebben met Service Broker, maar bekend zijn met databaseconcepten en Transact-SQL instructies. Het helpt nieuwe gebruikers aan de slag te gaan door hen te laten zien hoe ze een opgeslagen procedure voor interne activering implementeren om Service Broker-berichten te verwerken.
Concepten
In deze zelfstudie leert u hoe u de databaseobjecten maakt die vereist zijn voor het ondersteunen van een eenvoudig Service Broker-gesprek met behulp van een interne activeringsprocedure. Vervolgens start u een gesprek en gebruikt u het om berichten te verzenden.
Elk Service Broker-gesprek heeft twee einden: de gespreksinitiator en het doel. In een vraag-antwoord communicatie wordt een aanvraagbericht verzonden van de initiator naar het doel, waarop een antwoordbericht wordt geretourneerd. Interne activering van Service Broker kan worden gebruikt om een opgeslagen procedure uit te voeren wanneer er berichten moeten worden verwerkt. Service Broker kan meerdere kopieën van de opgeslagen procedure uitvoeren als er veel berichten worden verzonden. In deze zelfstudie leert u hoe u een opgeslagen procedure maakt waarmee de aanvraagberichten op het doel worden ontvangen en hoe u het doel configureert voor het gebruik van interne activering om de opgeslagen procedure uit te voeren.
In deze les leert u de volgende taken uit te voeren:
Maak een service en wachtrij voor het doel en een service en wachtrij voor de initiator.
Maak een aanvraagberichttype en een antwoordberichttype.
Maak een contract waarin de aanvraagberichten van de initiator naar het doel worden verzonden en dat antwoordberichten van het doel naar de initiator gaan.
Maak een opgeslagen procedure die aanvraagberichten ontvangt uit de doelwachtrij en stuur antwoordberichten naar de initiator.
Wijzig de doelwachtrij om interne activering van de opgeslagen procedure mogelijk te maken.
Vervolgens voert u een basisgesprek uit:
Start het gesprek.
Verzend een aanvraag van de initiator naar de ontvanger.
Service Broker activeert vervolgens de opgeslagen procedure. De opgeslagen procedure ontvangt de aanvraag aan het doel en stuurt een antwoord naar de initiator.
Ontvang het antwoord bij de initiator.
Beëindig de initiatorzijde van het gesprek.
Service Broker activeert vervolgens de opgeslagen procedure een tweede keer en de opgeslagen procedure sluit de doelzijde van de conversatie af.
Berichten worden niet via een netwerk verzonden voor gesprekken waarvan beide partijen zich in hetzelfde exemplaar van de database-engine bevinden. Beveiliging en machtigingen van database-engine beperken de toegang tot geautoriseerde principes. Netwerkversleuteling is niet nodig voor dit scenario.
Deze handleiding is onderverdeeld in de volgende lessen.
| Les | Beschrijving |
|---|---|
| Les 1: De basisgespreksobjecten maken | Maak de berichttypen, contracten, services en wachtrijen die nodig zijn om een eenvoudig Service Broker-gesprek te ondersteunen. |
| Les 2: Een interne activeringsprocedure maken | Maak de opgeslagen procedure die berichten van de doelwachtrij ontvangt en wijzig vervolgens de doelwachtrij om interne activering op te geven. |
| Les 3: Een gesprek starten en berichten verzenden | Voltooi een basisgesprek door het gesprek te starten en een aanvraagbericht van de initiator naar het doel te verzenden. De interne activeringsprocedure ontvangt het aanvraagbericht en retourneert een antwoordbericht. Vervolgens beëindigt u de initiatorzijde van het gesprek en de opgeslagen procedure beëindigt de doelzijde van het gesprek. |
| Les 4: Verwijder de gespreksobjecten | Verwijder de objecten die zijn gemaakt om het gesprek te ondersteunen. |
Eisen
Als u deze zelfstudie wilt voltooien, moet u bekend zijn met de Transact-SQL taal en hoe u de Database Engine Query Editor gebruikt in SQL Server Management Studio. U moet lid zijn van de db_ddladmin of db_owner vaste databaserollen voor de AdventureWorks2025 voorbeelddatabase of de sysadmin vaste serverfunctie.
Op uw systeem moet het volgende zijn geïnstalleerd:
Elke ondersteunde editie van SQL Server
Een ondersteunde internetbrowser
De
AdventureWorks2025voorbeelddatabase, die u kunt downloaden van de startpagina van Microsoft SQL Server Samples en Community Projects