Service Broker の管理
SMO では、Service Broker オブジェクトが名前空間に Microsoft.SqlServer.Management.Smo.Broker
存在します。これには、Microsoft.SqlServer.Smo.dllへの参照が必要です。 クラス情報のサポートには、Microsoft.SqlServer.ServiceBrokerEnum.dll への参照も必要です。
SMO には、Service Broker 実装のプログラム管理 (DDL) を許可する一連の Service Broker オブジェクトが用意されています。 これには、メッセージ型、コントラクト、キュー、およびサービスの定義が含まれます。 SMO はデータ操作を目的とした管理ツールであるため、Service Broker メッセージの送受信は SMO ではサポートされていません。
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の現在のインスタンスとして場所を指定するルートが含まれています。
参照
Microsoft.SqlServer.Management.Smo.Broker
SQL Server Service Broker (SQL Server Service Broker)