【问题标题】:Is a duration of 394 when executing a SQL query too much?执行 SQL 查询时,394 的持续时间是否过多?
【发布时间】:2009-03-23 14:31:36
【问题描述】:

我遇到了这个连接池问题:

How to solve a connection pool problem between ASP.NET and SQL Server?

我现在正在使用 SQL 分析器进行跟踪,我发现一些查询需要大约 400 个持续时间才能完成并返回数据。

这个值是不是太大了?

会不会导致之前的连接池问题?

【问题讨论】:

    标签: asp.net sql sql-server


    【解决方案1】:

    400 表示 400 毫秒或 0.4 秒。

    这是否太长真的取决于。如果这是您的首页或其他高流量区域,那么除非这是一个 Intranet 站点,否则这太过分了。您可能需要重新考虑如何获取这些数据,或者使用缓存来减少实际必须运行查询的次数。

    如果这是一份报告,或其他更多涉及的页面,那么 400 毫秒并不过分。充其量您可能想检查是否可以更快地完成查询以改善整体用户体验。

    您可能还需要运行 Tuning Advisor 来确定查询是否只是因为您没有正确的索引而运行缓慢。

    【讨论】:

      【解决方案2】:

      这取决于您的应用程序。这不到 1/2 秒。如果您正在处理数千万行数据,那么这可能会非常好。另一方面,如果您有 1000 多个用户,您的数据集很小,并且此查询一直在运行,那么您可能需要查看查询的性能。

      【讨论】:

        【解决方案3】:

        这取决于查询的用途、运行频率以及用户对响应时间的期望。

        如果查询在少量数据上运行缓慢,则可能是您的 SQL、索引或网络服务器与数据库服务器之间的网络连接存在问题。优化查询可能是解决此问题的最佳首要任务。

        此外,如果查询经常运行,或者在您需要快速响应时间的系统区域中,您可能需要稍微优化一下查询。

        如果查询需要运行该时间长度并且无法进一步优化,但数据不会经常更改,那么在应用程序中缓存结果可能有助于缩短响应时间。

        如果您有少量不关心性能的用户(例如运行报告的管理员),那么您不必担心。

        【讨论】:

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