代码之家  ›  专栏  ›  技术社区  ›  Beatles1692

关系重要吗?

  •  0
  • Beatles1692  · 技术社区  · 16 年前

    我们有一个应用程序,它使用NHibernate连接到SQL Server上的数据库。我们使用连接池和每请求会话方法在SQL Server上执行查询。 我们使用SQLServer活动监视器来监视连接数,并注意到每当用户登录到系统时,都会涉及25-30个连接。 因此,我要问一个问题:大量连接到SQL Server是否会导致性能问题?

    1 回复  |  直到 16 年前
        1
  •  2
  •   edosoft    16 年前

    每个到SQL Server的连接都需要分配一定数量的内存,因此在这方面需要考虑性能。

    然而,按照计划,20-30个连接是一个非常小的数字。

    一些有用的DMV供您监控:

    select * from sys.dm_exec_connections
    select * from sys.dm_exec_sessions
    

    除评论外:

    select @@MAX_CONNECTIONS
    

    如果正在使用连接池,则连接将保持打开状态并处于休眠状态,直到需要处理请求为止。或者,当请求完成处理时,应用程序可能没有关闭连接。

    我只能从SQL Server的角度进行评论,因为我不熟悉NHibernate的机制。

    推荐文章