创建 Service Broker 协定

适用于SQL ServerAzure SQL 托管实例

“约定”定义特定业务任务的名称并列出在该任务中使用的消息类型。 Service Broker 约定定义了两种不同的服务角色:发起方和目标。 会话的发起方通过向目标发送消息开始会话。 会话使用的约定用于定义哪一服务角色可以发送给定消息类型的消息。

对于服务执行的每项任务,创建包括任务中每个步骤使用的消息类型的约定。 对于每种消息类型,指定相应消息类型是从发起方发送到目标、从目标发送到发起方还是双向发送。

协定不指定消息排序或可发送的特定类型的消息数。 Service Broker 要求发起方发送对话会话中的第一条消息。 发送第一条消息之后,不再有排序方面的要求。

多个约定可以使用同一种消息类型。 例如,由包含部件号和数量的 XML 文档组成的消息在接受客户订单的任务、管理库存的任务以及请求发货的任务中可能很有用。 每项任务对应于不同的约定,但所有这三个约定都可以使用同一种消息类型。

消息的网络格式包括约定的名称。 因此,选择约定名称通常要避免排序规则问题和命名冲突。 有关命名的详细信息,请参阅 命名 Service Broker 对象