首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL Server Service Broker -按用户请求分组

SQL Server Service Broker -按用户请求分组
EN

Stack Overflow用户
提问于 2013-09-17 03:51:52
回答 1查看 158关注 0票数 1

我正在为SQL Server Service Broker处理排队项的用法制作原型。到目前为止,一切都很顺利。

我想做的一件事是能够在不同的进程或线程上并行处理队列中的几个项目,但限制处理,以便特定用户一次只能处理一个项目,以防止一个过于热心的用户饿死所有其他用户。

并行线程上的处理很容易。对每个用户的限制并不是那么简单。最初,我认为可以将会话组id设置为用户的id,从而使组的处理由服务代理自动序列化。在这一点上,我还没有找到成功实现这个选项的方法。

这是可以通过会话组完成的事情吗?有没有使用或不使用服务代理的更简单的方法?我是否必须在服务代理之外处理它?

我已经做了相当多的研究,但所有这些都开始运行在一起,所以如果我错过了一些明显的东西,我很抱歉。

EN

回答 1

Stack Overflow用户

发布于 2013-09-17 17:30:16

正如您所暗示的,您可以在会话和用户之间建立一对一的关系,然后,通过会话组锁定的魔力,SSSB一次只为每个用户处理一件事情。

系统为会话本身生成id,因此您无法设置它们,但您可以使用一个将用户映射到会话的表。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18836159

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档