Verwalten des Routings

Service Broker verwendet Routen, um zu ermitteln, wo Nachrichten übermittelt werden. In diesem Abschnitt werden Überlegungen zum Verwalten des Routings beschrieben.

Verwalten von AutoCreatedLocal

Standardmäßig enthält jede Benutzerdatenbank, einschließlich msdb, die Route AutoCreatedLocal. Diese Route stimmt mit beliebigen Dienstnamen und Brokerinstanzen überein und gibt an, dass die Nachricht innerhalb der aktuellen Instanz übermittelt werden muss. AutoCreatedLocal besitzt geringere Priorität als Routen, bei denen der Dienstname oder die Brokerinstanz explizit angegeben ist.

Weil AutoCreatedLocal standardmäßig in msdb vorhanden ist, versucht Service Broker, alle Nachrichten von außerhalb der Instanz innerhalb der aktuellen Instanz zu übermitteln. In vielen Fällen schränkt der Datenbankadministrator den Zugriff auf Dienste von außerhalb der Instanz ein, indem er AutoCreatedLocal in msdb löscht. Der Datenbankadministrator erstellt dann eine Route für jeden Dienst, der mit einer Remoteinstanz kommuniziert.

Verwalten des Ablaufs von Routen

In den meisten Fällen muss eine Route nicht ablaufen. Die Route bleibt aktiv, während das Routenobjekt vorhanden ist. Wenn sich die Zieladresse für die Route ändert, ändert ein Administrator entweder die Route, um die Adresse zu aktualisieren, oder er entfernt die Route.

Eine Anwendung, die dynamisches Routing verwendet, kann jedoch den Ablauf von Routen verwenden, um sicherzustellen, dass die Routinginformationen aktuell bleiben. Service Broker entfernt keine abgelaufenen Routen aus der Datenbank. Eine Anwendung, die den Ablauf von Routen verwendet, muss auch einen Auftrag des SQL Server-Agents erstellen, um abgelaufene Routenobjekte periodisch zu entfernen.

Siehe auch

Konzepte