我有几台支持两种不同应用程序的数据库的SQL服务器。我需要捕获来自每个数据库的类似数据的更改,但是要按顺序处理它。 Service Broker符合法案,我只有几个实施问题。将消息从多个服务器发送到一个Service Broker队列
我创建了用于扩展两个应用程序的“第三”数据库。在这个数据库上,我启用了服务代理,创建了消息模式,合同,服务和队列。
如果我想从LEGACYSERVER.Database
发送这类//mysite.com/extensions/message
的消息发送到ExtensionsQueue
上EXTENSIONSERVER.Database
,我是否需要运行SQL语句来创建每个数据库的碎片(架构,合同,信息等),我想谈从这个队列?看来,至少我需要每个数据库中的消息模式来强制完整性。
假设我需要(这似乎是有道理的)我应该命名每个服务器上的服务,队列等相同,否则会导致问题?例如,我应该在EXTENSIONSERVER
上命名//extensionserver/extensions/message
和//legacyserver/extensions/message
之类的服务吗?我是否甚至需要在LEGACYSERVER
上创建一个服务并排队,或者像这样的路线照顾它?
CREATE ROUTE
WITH
SERVICE_NAME = '//extensionserver/extensions/message',
ADDRESS = 'extensionserver:1433'