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?
答案 0 :(得分:1)
你更不了解一个核心概念:连接池。
目前有10位用户登录我们的MVC应用程序
这意味着什么都没有。因为这只是一个烹饪会议。
MVC应用程序在使用时仅使用数据库连接 - 生成页面时。
有10个人非常罕见。人们往往不会每分钟加载100页(而且会很低)。除非有大量的数据,一个罕见的案例或一个不称职的程序员,数据库连接很少需要超过10毫秒左右的页面...有10个人偶尔会做一些事情....这是没有的。
所以你最多有2个连接,因为没有任何事情发生。
由于连接池的存在,它们会继续保持活动状态(比一段时间更快),而不是一遍又一遍地通过所有连接开销。