【问题标题】:Classic ASP Bottlenecks经典的 ASP 瓶颈
【发布时间】:2010-10-29 00:07:34
【问题描述】:

我有 2 个网站通过经典 ASP 连接到同一个 MSSQL 实例。这两个网站在性质上相似并且运行相似的查询。

一个网站偶尔会阻塞,而另一个网站则很好。这让我相信 MSSQL 不是问题,否则我会认为两个网站会同时出现瓶颈。

我一直在尝试使用 Windows Server 2008 中的性能监视器来定位问题,但由于所有内容都是汇总形式,因此很难找到有问题的 asp 页面。

所以我正在寻找一些故障排除技巧...

有没有一种简单的方法可以检查所有最近的 ASP 页面以及它们运行的​​时间?

是否有一种简单的方法可以在实时页面请求发生时查看它们?

我基本上需要追踪这个有问题的代码,但我很难通过 IIS 实时查看发生了什么。

【问题讨论】:

    标签: sql-server performance iis-7 asp-classic


    【解决方案1】:

    如果您使用“W3C Extended Logging”作为 IIS 日志文件的日志模式,那么您可以打开“time-taken”列,该列将为您提供每个 ASP 的执行时间(以毫秒为单位)(默认情况下,此列被禁用)。 See here 了解更多详情。

    【讨论】:

      【解决方案2】:

      您可能会发现一个应用程序中的某些东西在数据库中获取了锁(例如通过事务)然后没有释放它,这导致另一个应用程序超时。

      检查您的代码中的事务以及它们是否被关闭,并可能考虑在 SQL 服务器上设置跟踪以记录死锁。

      【讨论】:

        【解决方案3】:

        最好的办法是运行 SQL Server 分析器来查看哪些过程或 sql 可能需要很长时间才能执行。您还可以使用Process Monitor 查看任何可能需要很长时间才能完成执行的页面,最后不要忘记检查您的 IIS 日志。

        希望有帮助

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-01-31
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多