希望有人能帮上忙。
短版本:我想用Python构建我自己的网站压力测试器。
为什么?因为我喜欢它:)我不是在寻找预先构建的解决方案,即funkload或JMeter。作为一个编程练习,这似乎是一件有趣的事情。我还认为,学习如何做我想做的事,以后在其他情况下可能是有用的。
我想让它做什么?我打算让它随着时间的推移变得更加复杂,但我的第一个目标很简单:在尽可能短的时间内提出尽可能多的请求。我正在拍摄每秒300-500次请求。
我尝试过很多不同的方法。最有希望的两个是:
有人有什么想法或建议吗?如果我能以某种方式得到回应的大小,而不被强迫阅读它,那就太完美了。我想知道的是,我实际上得到了正确的字节数。数据是什么并不重要。
或者,如果这不是Python中的一个选项,那么老实说,我愿意尝试任何人必须提出的任何建议。我玩过Twister,但没有达到任何比我已经看到的线程的速度。
无论如何--任何帮助都是很好的。谢谢!
发布于 2011-07-27 22:13:17
我建议你试试盖特姆。它可以非常简单地完成这项任务,因为您编写的代码看起来是同步的,并且使用python (类似于urllib2 )。它将非常快,因为它具有较低的内存开销(只支付您所使用的),并且它使用对IO的快速轮询系统调用。此代码示例非常接近你想要的东西。您需要在每个核心运行一个gevent工作人员。
发布于 2011-07-27 22:35:36
我建议您使用pycurl,用于libcurl的Python绑定。它有自己的异步事件循环,速度非常快。
还有一个简化的实现包装器,如果您不能按原样使用它的话,您可以对其进行调整。
请参阅Pycopia项目的WWW.client模块(我对其进行了维护)。
https://stackoverflow.com/questions/6851823
复制相似问题