管理 Service Broker
在 SMO 中,Service Broker 物件位於 Microsoft.SqlServer.Management.Smo.Broker 命名空間內,該命名空間需要參考 Microsoft.SqlServer.Smo.dll。支援類別資訊也需要參考 Microsoft.SqlServer.ServiceBrokerEnum.dll。
SMO 會提供一組 Service Broker 物件,允許 Service Broker 的程式設計管理 (DDL) 實作。這包括定義訊息類型、合約、佇列與服務。SMO 是一個其用途並不在於資料操作的管理工具,因此,SMO 不支援傳送和接收 Service Broker 訊息。
在 SMO 中,ServiceBroker 物件是最上層的類別,其下則為所有 Service Broker 功能所在之處。對於參與分散式訊息應用程式的每個資料庫而言,都需要 Service Broker 實作。因此,ServiceBroker 物件是 Database 物件的子系。
ServiceBroker 物件包含下列物件的集合,用於定義 Service Broker 實作:
MessageType 物件代表定義訊息內容的訊息類型。
MessageTypeMapping 物件代表指定給定交談中訊息方向和類型的合約。
ServiceQueue 物件會在傳送訊息前以及收到訊息後儲存訊息。它們提供服務之間的非同步通訊,以及其他優點,如自動鎖定同一交談群組中的訊息。
BrokerService 物件代表 Service Broker 服務,這些服務是交談的可定址端點。Service Broker 訊息會從一個服務傳送到另一個服務。服務會指定要保存訊息的佇列,並指定哪個服務可做為目標的合約。
RemoteServiceBinding 物件代表 Service Broker 在與遠端服務進行通訊時,用於安全性與驗證的設定。
ServiceRoute 物件代表 Service Broker 路由,其中包含服務的位置資訊以及所定義的資料庫。訊息傳遞需要路由。根據預設,每個資料庫包含的路由都會將位置指定為目前的 SQL Server 執行個體。