SQL Server服务代理500消息限制

时间:2018-07-10 16:18:08

标签: sql-server limit service-broker

我认为我已经超出了菜鸟的范围,但我可能没有。 ^^

我正在使用SSB在基于触发器的变更捕获技术之上构建一些自定义的专用数据仓库。

  • 从数据库A到B加载数据的2种不同方式:初始加载与常规加载

  • 尽管初始加载可即时实现临时队列/服务,但常规加载具有永久性。两者都使用相同的接收器端点和相同的转换过程

  • 虽然初始加载成功处理了数百万条消息,但常规的恰好是 500

当我在表上生成INSERT(例如)操作时,我会注意到一些阈值:

  • 499个操作=>发送499条单行消息=>收到499条消息=>会话状态变为“已关闭” =>发出操作的连接没有锁定

  • 500次操作=>发送500条单行消息=>收到500条消息=>对话状态停留在“ CONVERSING” =>发出操作的连接仍处于锁定状态

  • 501操作=>发送500条单行消息=>收到500条消息=>会话状态停留在“ CONVERSING” =>发出操作的连接仍处于锁定状态

  • (依此类推)

我浏览了我的代码,无法找到此特定的“ 500”值。让我想知道数据库A经纪人的某些限制,但我不知道是哪个。有想法吗?

在SQLApostle注释后进行编辑 我首先想到的是,我的数据库还原使另一个具有相同ID的代理在以前的机器上运行(我已经经历过,在同一实例上使用数据库版本控制),该端点可以被广播,也可以被广播到新机器。解释差异。但是,我在以前的实例上分离了全部内容,因此,IMO无法再运行了。

预先感谢

让·伊夫斯

0 个答案:

没有答案