标签: sql-server concurrency sql-server-agent
我的SQL代理中有一些预定的作业:
如您所见,多个作业可以同时运行。当这些作业同时运行时,会导致CPU使用率达到100%。
有解决方案吗?有没有办法控制同时运行的作业数量?注意:我需要这些作业在适当的时间内运行大约。
答案 0 :(得分:12)
通过sp_getapplock
您要求用户控制并发,这通常是最佳方式。
如果锁定已被另一个作业保留,则允许您等待或中止。我们在一个或两个地方使用它来阻止多个用户强制执行相同的任务来重叠。效果很好。