模拟测试环境(Mac OS X中)带宽差?(Simulate poor bandwidth in a

2019-07-29 20:26发布

我们有我们使用我们的网站的用户定制的Flash / HTML5视频播放器。 我目前正在充实了谁拥有“次优”带宽的用户体验 - 基本上,我们希望客户端代码能够检测用户体验不佳,由于过多的缓冲。 我想在我的本地开发环境中测试这个“带宽差”的处理代码。

有谁知道的好技术在用于测试目的本地环境模拟 “可怜的带宽”?

更具体地讲,我有我的本地浏览器连接到虚拟机uWSGI,nginx的,和Python / Django的的情况下,我想能够注入延迟任意数量的进入这些系统中的内容交付。 (我主要关注与nginx的,这确实影像内容分发/流媒体这样做)。

编辑:这可能是相关的开发环境是Mac OS X的

Answer 1:

只要使用nginx的配置。

虽然OS X Lion中的网络链接空调工作正常,它仍然烦人的使用时,我真的只是想测试Web应用程序的行为的一个子集-也就是说,缓慢的视频缓冲处理系统。

因此,我发现它更方便地设置速率限制我的nginx.conf文件,例如,:

location ~ /files/(.*\.(mp4|m4v|mov))$ {
    ...
    limit_rate 50k;  #  <-- Limit download rate per connection to 50kbps
    ...
}

编辑:请参阅nginx的HttpCoreModule文档 。



Answer 2:

FreeBSD是的Mac OS的祖先,所以你可以使用内置强大的防火墙称为IPFW。 它可以在许多不同的情况下使用,例如模拟低带宽。 用你自己的IP地址回环(127.0.0.1)或(在这种情况下8.8.8.8)的远程服务器。

我们做一个视频采访Web的应用程序,所以我想我们的接触不良的模拟的经验分享,见下面的例子:

$ sudo su

$ ipfw show
$ ipfw pipe 1 config delay 600ms bw 256kbit/s
$ ipfw add pipe 1 dst-ip 8.8.8.8 dst-port 80

$ ipfw flush

ipfw的管道可以模拟使用延迟体重 ,甚至概率模拟数据包丢失缓慢和不稳定的连接。



Answer 3:

我刚刚发现的Mac OS X的网络链接调理 ,但我还不确定它适用于loopback ,它需要我的目的。

编辑:这似乎对回工作,因此它似乎解决我的问题! 这可能是如果你在OS X 10.7的路要走



Answer 4:

我使用这个程序NetLimiter模拟“可怜的带宽”。 这不是免费的,但有一个试用版效果很好。 仅适用于Windows :(



文章来源: Simulate poor bandwidth in a testing environment (Mac OS X)?