我正在构build一个使用TCP套接字进行通信的应用程序。 我想testing它在慢速条件下的performance。
网站上也有类似的问题,但据我所知,他们处理HTTPstream量,或者是关于Linux。 我的stream量不是HTTP,只是普通的TCP套接字,操作系统是Windows。
我尝试使用调制解调器的调制解调器速度的设置,但它没有工作,它似乎只适用于HTTP连接。
尽管您可能想投资大量的单元测试,但您可以使用VMWare Workstation模拟各种网络条件:
你将不得不安装一个虚拟机进行测试,建立桥接网络(让vm访问你真实的网络)并把你的代码上传到vm。
之后,你可以开始改变设置,看看你的应用程序如何执行。
NetLimiter也可以使用,但它的选项较少(在你的情况下, 丢包是非常有趣的测试,并不可用netlimiter)。
我想你在这里采取了错误的做法。
你可以用一些精心设计的单元测试来实现你所需要的一切。 网络链接速度慢的所有事情都可以在受控条件下的单元测试环境中进行模拟。
你的代码必须处理“慢”链接的东西只是你应该处理的东西,包括:
总之,通过在一个模拟的慢速网络上运行你的客户端和服务器,任何事情都不能通过一套体面的单元测试来实现,而你想在这样一个链接上进行测试的任何事情都可能影响你的任何连接链接的速度。