因此,这两个库具有相似的理念和相似的设计决策。但是这个流行的 WSGI 基准测试说eventlet比gevent. 是什么让他们的表现如此不同?
据我所知,它们之间的主要区别是:
gevent有意依赖并耦合到libev(libevent, 之前的),同时eventlet定义了独立的反应器接口并使用 , 和 Twisted reactor 实现特定select的epoll适配器。额外的反应器接口是否会影响关键性能?gevent主要用 Cython 编写,而eventlet用纯 Python 编写。对于计算量不大但受 IO 限制的程序,本机编译的 Cython 是否比纯 Python 更快?gevent模拟标准库接口的原语,而的eventlet原语与标准不同,并提供额外的层来模拟它。额外的仿真层会eventlet变慢吗?只是执行
eventlet.wsgi比差gevent.pywsgi吗?
我真的很想知道,因为它们对我来说总体上看起来很相似。