在本地Web服务器上进行开发时模拟延迟

时间:2009-10-31 14:36:52

标签: performance testing frontend

来自Yahoo's performance best practices效果黄金规则是:

  

最终用户响应时间的80-90%   花了下载全部   页面中的组件:图像,   样式表,脚本,Flash等。

这意味着当我在我的本地网络服务器上进行开发时,很难准确了解最终用户将体验到的内容。

如何模拟延迟,以便了解我的应用程序在网络上部署后的效果?

我主要在Windows上开发,但我也会对其他平台的解决方案感兴趣。

7 个答案:

答案 0 :(得分:7)

指向laser modemmirrors on the moon应该会产生远离这个世界的延迟。

答案 1 :(得分:7)

Fiddler2可以非常轻松地do this。此外,它还具有更多功能,在开发时非常有用。

答案 2 :(得分:2)

YSlow可能会帮助你。 YSlow根据Yahoo!的规则分析网页。

Firefox Throttle。这可以降低速度(仅限Windows)。

这些是Firefox的插件。

答案 3 :(得分:1)

您可以在外部设置代理,以便将流量从您的Web服务器传输到它,然后再返回到本地浏览器。这是非常现实的(当然这取决于您放置代理的位置)。

否则你可以找到很多方法在软件中实现它。

答案 4 :(得分:1)

在附近的Linux机器上运行Web服务器并配置NetEm以增加离开相应接口的数据包的延迟。

如果您的Web服务器无法在Linux下运行,请将Linux盒配置为测试客户端计算机和Web服务器之间的路由器,然后使用NetEm

答案 5 :(得分:0)

虽然有许多方法可以模拟延迟,包括一些非常好的硬件解决方案,但对我来说最简单的方法之一是在远程位置运行TCP代理。代理侦听然后将流量引导回我的最终目的地。在远程服务器上,我运行一个名为balance的unix程序。然后我将其指回我的本地服务器。

答案 6 :(得分:0)

如果您需要模拟一个服务器请求,一个简单的方法就是在返回之前简单地让服务器sleep()一秒钟。