【问题标题】:How to determine if you've got a session lock from your web application?如何确定您的 Web 应用程序是否获得了会话锁定?
【发布时间】:2019-05-09 04:19:03
【问题描述】:

网络应用程序设置:

  • .Net Framework 4.5.2
  • SessionState 模式:SQLServer

我想知道我们如何确定应用程序是否获得了会话锁定。

我尝试使用性能监视器,但我不知道需要什么性能计数器以及我们可以说它是会话锁的指针到底是什么。

【问题讨论】:

  • 你的意思是SQL Server查询锁还是ASP.NET MVC会话锁?
  • @StepUp ASP.Net 会话锁定
  • @StepUp 已经看到了,但这对我的问题没有帮助。我想知道的是,您如何能提出网站的缓慢是由会话锁定引起的。就像它向服务器记录了一个错误还是什么?
  • 尝试在这里提问:forums.asp.net/1146.aspx

标签: asp.net sql-server performance server performancecounter


【解决方案1】:

您可以使用此查询来了解被阻止的会话信息-

SELECT session_id,        
   status,
        DB_NAME(database_id) [Database],
        blocking_session_id,
        wait_type,
        wait_time,
        wait_resource 
FROM    sys.dm_exec_requests
WHERE   blocking_session_id <> 0
GO

要了解有关它的一些文本,请使用以下查询-

SELECT  A.Session_id,
        A.blocking_session_id,
        DB_NAME(B.database_id) [Database],
        C.text
FROM    sys.dm_exec_requests A
        LEFT JOIN sys.dm_exec_requests B ON A.blocking_session_id = B.session_id
        OUTER APPLY sys.dm_exec_sql_text(B.sql_handle) C
WHERE   A.blocking_session_id <> 0

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-14
    • 2019-07-21
    • 2012-04-18
    相关资源
    最近更新 更多