【发布时间】:2018-06-06 20:16:39
【问题描述】:
我正在创建一个数据库医疗系统,然后我尝试创建一个通知功能,我将在其中使用 SQL 作业,其中 SQL 作业的职责是检查一些表和实体发现需要通知某些数据的更改会将其 id 放入名为 Notification 的实体中,并且将为应用调用触发器以检查该表并发送通知。
我想问的是一个sql server可以处理多少个SQL作业?
在后台运行的 SQL 作业的数量是否会以某种方式影响我的应用程序或数据库的性能?
注意:SQL 作业将每 10 秒运行一次
我在网上找不到任何有用的信息。
提前致谢。
【问题讨论】:
-
似乎这个链接有很多答案。 google.com/…至于性能问题,当然会影响性能。您的工作大概是对数据库执行查询吧?这意味着这些查询正在使用服务器上的资源并在适当的时候锁定表。
-
是的,该作业将在一个间隔上查询一个联合 sql 查询并将适当的存储在一个新表中,以便应用程序只能查找该表而不是每次都自行创建联合,是好的还是必须有其他更好的方法?
-
我认为您正在向后看。拥有一堆作业会在 msdb 等中占用更多空间......但是如果它们没有运行,那么性能明智,你会注意到它们吗?如果您有 1 个每 10 秒运行一次的作业,而不是 100 个每天运行一次的作业会怎样。哪个性能会更差?好吧,显然有更多的处决,但工作是做什么的?性能很大程度上取决于这里。
-
@scsimon 作业将进行联合查询并将结果存储在另一个表中,而不是应用程序自行执行。然后应用程序将监听触发器并仅查看表格并向用户发送通知
-
Ahmed 的作业数与性能没有直接关系。一般来说,这些工作在做什么以及他们做这些工作的频率在这里更受关注。一项进行索引维护或 dbcc checkdb 的工作可能比其他工作产生更大的影响。
标签: sql-server database triggers query-performance sql-job