正在加载...

衡量web性能一个性能等式

[ 2009/03/16 23:12 | by selboo ]

      给大家分享一个衡量 Web 应用程序性能的一个公式,今天不经意中看到了这个公式,感觉获益良多,并做了一点小小的修改,在这里分享给大家,希望对大家有所帮助.

      R=吞吐量/带宽+RTT+Appturns(RTT)/并发请求+Cs+Cc

      这个公式来源于2006 年 9 月,NetForecast 的 Peter Sevcik 和 Rebecca Wetzel 发表了一篇名为 "Field Guide to Application Delivery Systems" 的论文利用此公式事实上,如果想在 Web 站点中嵌入调试模式以利用这一性能等式,可以对所有这些元素自行编写代码.这样做有充分的理由:如果能够定期在浏览器中列出性能等式元素,则很容易就可以检测出存在性能问题的位置.以下一些参数的说明变量 定义

      R 响应时间.从用户请求页面(通过单击链接等操作)到整个页面全部呈现在用户计算机中所需的总时间.通常以秒为测量单位. 负载 发送到浏览器的字节总数,包括标记和所有资源(例如,CSS、JS 和图像文件等).

      带宽 与浏览器之间的传输率.这可能是不对称的,如果给定页面是从多个源生成的,这可能表示多个速度.通常情况下,会加总取一平均值作为单一带宽,单位为字节/秒. AppTurns 给定页面所需的资源文件数.这些资源文件包括 CSS、JS、图像等,还包括浏览器在页面显示过程中检索的任何其他文件.在此等式中,HTML 页面是通过在 AppTurns 表达式之前加上往返时间 (RTT) 单独计算的. RTT 往返所需的时间,与传输的字节无关.对于页面本身,每个请求至少需要耗用一个 RTT.通常以毫秒为测量单位. 并发请求 浏览器同时发出的请求资源文件的请求数.默认情况下,Internet Explorer 执行两个并发请求.此设置可以进行调整,但很少这样做. Cs 服务器上的计算时间.这是运行代码、从数据库检索数据以及合成要发送到浏览器的响应所需的时间.测量单位为毫秒.Cc 客户端上的计算时间.这是浏览器在屏幕上实际显示 HTML、执行 JavaScript、实施 CSS 规则等所需的时间.

      RTT(Round-Trip Time): 往返时延,在计算机网络中它也是一个重要的性能指标,它表示从发送端发送数据开始,到发送端收到来自接收端的确使用过LoadRunner的朋友都知道我们能够很容易知道一个业务的吞吐量,AppTurns.对于RTT,并发请求我们能够很容易获得.认(接收端收到数据后便立即发送确认)

      对于业务的吞吐量,R响应时间,AppTurns.宽带,RTT,我们可以通过去时些性能测试工具很容易获得.

      对于Cs和CC在 ASP.NET 页面中,很容易就可以编写代码来记录页面开始执行的准确时间,然后再将其从执行完成时的当时时间中减掉.客户端也是如此;可在 HTML 页面顶部执行一段 JavaScript 来记录开始时间,然后当页面执行完毕并触发了 OnLoad 事件时将其从当时时间中减掉.事实上,如果想在 Web 站点中嵌入调试模式以利用这一性能等式,可以对所有这些元素自行编写代码.这样做有充分的理由:如果能够定期在浏览器中列出性能等式元素,则很容易就可以检测出存在性能问题的位置.例如,假设您的 ASP.NET 应用程序的用户都位于其他洲,而且使用的是低带宽.由于 ping 时间较高 (> 200ms) 而带宽较低 (< 500kbps),所以这些用户非常容易受应用程序总负载和往返次数的影响.这时您必须站在这些用户的角度来审视您的应用程序,因为他们的体验与您的体验截然不同.
Tags: ,
,
发表评论
表情
打开HTML
打开UBB
打开表情
隐藏
记住我
昵称   密码   游客无需密码
网址   电邮   [注册]