【发布时间】:2011-04-17 10:28:00
【问题描述】:
我的 asp.net 应用程序出现性能问题。有时客户端执行命令需要 30-40 秒,而有时需要 3-4 秒。我尝试了 SQL Profiler,但没有发现任何问题。在客户尝试的相同情况下,我无法复制我这边的问题。
我认为这可能与我正在使用的会话变量有关。我正在使用其中很多来在页面内传递信息。但是我不清除它们。
如果我清除它们会有帮助吗?如果是的话,这会影响其他用户吗?还是只为该用户清除?
感谢任何帮助。
【问题讨论】:
-
当这种情况发生时,您能否向我们提供有关服务器负载的更多信息,包括 CPU 使用情况和内存使用情况?当请求突然开始花费 30 多秒时,我通常会寻找资源死锁或超时。
-
这类问题真的很难回答。硬件怎么样?有多少 Web 服务器用户?每个用户在会话中到底有多少数据(你能量化“很多”)吗?有多少 SQL Server 用户?平台/硬件/网络吞吐量的差异以及大约一百万个其他因素(糟糕的代码、糟糕的架构、一天中的时间、负载平衡、缓存等)都会影响性能。环境怎么样?
-
您使用的是什么会话状态模式?即 inproc、sqlserver 或 stateserver?后两者将比前者使用更多的资源,尽管它们也更具弹性。
标签: asp.net sql-server vb.net tsql session-state