代码之家  ›  专栏  ›  技术社区  ›  Craig

分析web应用请求

  •  1
  • Craig  · 技术社区  · 14 年前

    我正在构建一个web应用程序,其中一个任务是提高性能。我想知道任何可以用来计时网页的工具。

    例如,我需要能够向管理人员记录一个特定的页面确实需要5秒加载,现在需要1秒。

    有什么工具可以帮助解决这个问题吗?它不是一个可公开访问的网站,是用ASP.NET MVC编写的。

    3 回复  |  直到 14 年前
        1
  •  2
  •   Jagmag    14 年前

    我用fiddler来测试网页的性能。

    尽管默认情况下它忽略本地主机请求,但是您可以让它工作,即使是那些使用各种在线提示的用户 here here

    通常对于任何请求,它都会给出如下的时间信息

    ACTUAL PERFORMANCE
    --------------
    ClientConnected:    11:02:55.765
    ClientBeginRequest: 11:02:55.765
    ClientDoneRequest:  11:02:55.765
    Gateway Determination:  0ms
    DNS Lookup:         0ms
    TCP/IP Connect:     0ms
    ServerConnected:    11:02:55.765
    FiddlerBeginRequest:    11:02:55.765
    ServerGotRequest:   11:02:55.765
    ServerBeginResponse:    11:02:55.890
    ServerDoneResponse: 11:02:56.546
    ClientBeginResponse:    11:02:56.546
    ClientDoneResponse: 11:02:56.546
    
        Overall Elapsed:    00:00:00.7812500
    

    编辑:您还可以将整个会话保存为会话存档—可用于记录特定事件序列的结果和获得的性能。这可以作为“文档”来给你的经理留下深刻印象,并跟踪业绩的改善。

    编辑:您还可以 save Fiddlers session as a Visual Studio web test . 这有助于创建测试,特别是在使用Visual Studio Web测试工具时 alt text

        2
  •  0
  •   BillThor    14 年前

    我通过在访问日志中记录响应时间来处理这个问题。Apache支持这一点,因此您可以通过代理服务器进行代理。IIS可以在自定义日志格式中支持相同的内容。但是,服务器端的日志记录只包括页面的传递速度。

    感知响应时间高度依赖于适当的HTML和CSS。为包含的内容提供大小可以显著加快页面的呈现时间。它可以允许页面的可见部分在页面下载完成之前呈现和稳定。

    所包含内容(如CSS、脚本库和图像)的下载时间也会对感知的响应产生重大影响。

    客户端web测试工具可以为这类工作提供更好的解决方案。如果操作正确,它们还将显示您没有破坏网站。

        3
  •  0
  •   Franci Penov    14 年前

    Chrome和Safari可以使用他们的开发工具来测量页面加载时间。Fiddler也可以做到这一点,尽管它并没有给你提供那么好的聚合图片。我怀疑萤火虫也能做到这一点,但我从来没有用过,所以不能保证。

    注意这些是手动测量的。如果您想进行自动化的完美测试(将运行多个场景),可以使用更复杂的工具对数据进行聚合,并将其与基线进行比较,从而为您提供更改的增量。如果您生活在Microsoft world中,则可以使用Visual Studio集成测试工具或独立的Web容量分析工具。如果您生活在开放源码世界中,请看一下Apache JMeter。还有一些第三方工具,显示您搜索“网页性能测试”的时间。