我创建了一套TCP服务器的演示,但是我的gevent示例显然比较慢。我真的没有测试性能,但目前正在使gevent版本变慢5倍。gevent urllib很慢
我确定必须是我如何编译gevent,但无法解决问题。我正在使用fink编译的python 2.6和2.7使用OSX豹。我已经尝试了稳定的gevent和gevent 1.0b1,它的行为相同。回声需要5秒钟的时间来响应,其他示例需要1秒钟的时间才能进入<。如果我删除urllib电话,问题就会消失。
我把所有的代码https://github.com/djay/geventechodemo
运行我使用zc.buildout的例子,让建
$ python2.7 bootstrap.py
$ bin/buildout
要运行GEVENT例如:
$ bin/py geventecho3.py &
[1] 80790
waiting for connection...
$ telnet localhost 8080
Trying 127.0.0.1...
...connected from: ('127.0.0.1', 56588)
Connected to localhost.
Escape character is '^]'.
hello
echo: avast
这需要3-4秒才能在我的系统上响应。
然而螺纹示例
$ bin/py threadecho2.py
或扭曲的示例
$ bin/py twistedecho2.py
小于1秒。任何想法我做错了什么?
这似乎取决于我的本地网络上工作。在我的家gevent urlib调用比正常的urlib慢,但在办公室他们都是相同的速度。很奇怪。 – djay 2012-04-05 01:28:57