什么是与Django一起使用的最好的socket.io服务器 - gevent或tornadio2?

时间:2012-02-20 19:55:25

标签: django socket.io tornado gevent

我正在使用客户端的backbone.js和socket.io以及服务器端的Django开发WebApp。我希望在数据发生变化时从服务器“推送”(就像在聊天应用程序中一样)。我在Python中遇到了两个带有Django集成的socket.io实现,看起来很有希望:

gevent和tornado都有very good performance,所以我对其他异步连接框架不感兴趣。唯一的另一个要求是使用SSL进行连接 - 没有纯文本传输。

所以这两者之间接近,哪个最容易实现?是否有一个很好的基于订阅的tornadio2框架,类似于django-socketio如何为gevent做的?

我遇到的另一个选项是django-serverpush,它也基于TornadIO2。与其他TornadIO2应用程序相比,它更好地与Django集成,但在实现生产就绪之前,实现仍需要一些改进。

2 个答案:

答案 0 :(得分:6)

在撰写此答案时,django-socketio仍未完全升级,无法使用最新的socket.io。

另一方面,Tornado / TornadIO2维护得很好,并且通过一些自定义扩展,我能够非常好地启动和运行它们。在我推出我的产品之后,我希望花一些时间来开源我的修改。在此之前,我很乐意回答有关如何运行的任何问题。

答案 1 :(得分:1)

老实说,我会说他们非常相似。这更像是一种观点。对于性能,我认为gevent基于我读过的内容有更多的性能,但是您应该自己进行测试以找出哪个性能最高。