SQL Server 2014 Express特定DB的dbid计数始终为2

时间:2016-05-13 17:05:38

标签: sql-server

SELECT 
    DB_NAME(dbid) as DBName, 
    COUNT(dbid) as NumberOfConnections,
    loginame as LoginName
FROM
    sys.sysprocesses
WHERE 
    dbid > 0
GROUP BY 
    dbid, loginame

目前,我们的MVC应用程序中有10个用户登录,但数据库的NumberOfConnections始终为2 ...

SQL Server 2014 Express是否有限制,为什么总是2?

1 个答案:

答案 0 :(得分:1)

你更不了解一个核心概念:连接池。

  

目前有10位用户登录我们的MVC应用程序

这意味着什么都没有。因为这只是一个烹饪会议。

MVC应用程序在使用时仅使用数据库连接 - 生成页面时。

有10个人非常罕见。人们往往不会每分钟加载100页(而且会很低)。除非有大量的数据,一个罕见的案例或一个不称职的程序员,数据库连接很少需要超过10毫秒左右的页面...有10个人偶尔会做一些事情....这是没有的。

所以你最多有2个连接,因为没有任何事情发生。

由于连接池的存在,它们会继续保持活动状态(比一段时间更快),而不是一遍又一遍地通过所有连接开销。