我有2个网站通过经典ASP连接到同一个MSSQL实例。这两个网站的性质相似,并且运行类似的查询。
一个网站每隔一段时间就会窒息一次,而另一个网站则很好。这让我相信MSSQL不是问题所在,否则我会认为这两个网站都会同时出现瓶颈。
我一直在尝试使用Windows Server 2008中的性能监视器来查找问题,但由于所有内容都是聚合形式,因此很难找到有问题的asp页面。
所以我正在寻找一些故障排除技巧......
是否有一种简单的方法可以检查所有最近的ASP页面以及查看它们运行的时间量?
是否有一种简单的方法可以查看实时页面请求?
我基本上需要追踪这个有问题的代码,但我很难通过IIS实时查看发生的事情。
答案 0 :(得分:1)
您可能会发现一个应用程序中的某些内容正在锁定数据库(例如通过事务),然后不释放它,这会导致另一个应用程序超时。
检查代码中的事务并将其关闭,并且可能在SQL服务器上设置跟踪以记录死锁。
答案 1 :(得分:1)
如果使用“W3C Extended Logging”作为IIS日志文件的日志模式,则可以打开“time-taken”列,这将为您提供每个ASP的执行时间(以毫秒为单位)(默认情况下,此列被禁用)。 See here了解更多详情。
答案 2 :(得分:0)
您最好的选择是运行SQL Server探查器,以查看可能需要很长时间才能执行的过程或sql。您还可以使用Process Monitor查看可能需要很长时间才能完成执行的任何页面,最后不要忘记检查IIS日志。
希望有所帮助