Я создал набор демонстраций TCP-сервера, однако мои примеры gevent заметно медленнее. Я действительно не тестирую производительность, но на данный момент что-то делает версию gevent в 5 раз медленнее.
Наверное, я скомпилировал gevent именно так, но не могу решить проблему. Я использую OSX leopard, используя скомпилированный fink python 2.6 и 2.7. Я пробовал как стабильный gevent, так и gevent 1.0b1, и он действует одинаково. Эху требуется 5 секунд, чтобы ответить, тогда как другие примеры занимают
Я поместил весь код в 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 с. Есть идеи, что я делаю не так?