python-Sokesha副Gevent-Sokesha
python-socketio vs Gevent-socketio
我正在选择 python 库来编写嵌入我网站的实时聊天功能页面。
我找到了两个基于 Socket.IO、python-socketio
和 gevent-socketio
的库:
Python implementation of the Socket.IO realtime server.
Socket.IO is a WebSocket-like abstraction that enables real-time communication between a browser and a server. gevent-socketio is a Python implementation of the protocol.
你看,两者都是Socket.IO的实现。
我想选择其中一个(或者不知道有没有比他们更好的库)。
我的考虑点如下:
我的python后端项目是由Django/Django-Rest-Framework框架编写的。
我的项目很急,想用一个更方便的lib,少写一些代码来实现我的需求。
我上网,gevent-socketio
在线聊天必须使用gevent python WSGI
服务器,我不确定这是否是我项目部署的限制。
谁能给我建议,让我选择最适合我的图书馆?
抱歉这么晚才回答这个问题。我是 python-socketio 的作者和维护者,所以我会给你一个有偏见的回应。
gevent-socketio 项目有一段时间没有维护了。截至今天,repository on GitHub 上的最新提交是从 2016 年 9 月开始的,大约 2.5 年前。此软件包支持的 Socket.IO 协议版本是 0.x 版本,它是旧的并且与 Socket.IO 1.x 和 2.x 版本完全不兼容。
我的 python-socketio 项目是由于 gevent-socketio 的开发速度放缓而诞生的,特别是由于从未收到升级以支持 1.x 版本 Socket.IO协议。与我的竞争对手不同,我决定不添加对 gevent 的硬依赖。相反,我有一个插件系统,它允许我支持许多不同的 Web 服务器框架。截至今天,支持扩展到 eventlet、gevent、uwsgi(与 gevent 结合)、asyncio(与 aiohttp、sanic 或任何 ASGI 兼容服务器结合)和 Tornado。这个包支持 Socket.IO 协议的所有 1.x 和 2.x 版本,我确保它可以连接到官方 JavaScript 客户端,这是大多数人使用的它。如果有用,还包括一个基于 Python 的 Socket.IO 客户端。
希望对您有所帮助!
您也应该检查 gevent-websocket
。我每天都在我的项目中使用它,效果很好。
https://github.com/jgelens/gevent-websocket/tree/master/geventwebsocket
我正在选择 python 库来编写嵌入我网站的实时聊天功能页面。
我找到了两个基于 Socket.IO、python-socketio
和 gevent-socketio
的库:
Python implementation of the Socket.IO realtime server.
Socket.IO is a WebSocket-like abstraction that enables real-time communication between a browser and a server. gevent-socketio is a Python implementation of the protocol.
你看,两者都是Socket.IO的实现。
我想选择其中一个(或者不知道有没有比他们更好的库)。
我的考虑点如下:
我的python后端项目是由Django/Django-Rest-Framework框架编写的。
我的项目很急,想用一个更方便的lib,少写一些代码来实现我的需求。
我上网,gevent-socketio
在线聊天必须使用gevent python WSGI
服务器,我不确定这是否是我项目部署的限制。
谁能给我建议,让我选择最适合我的图书馆?
抱歉这么晚才回答这个问题。我是 python-socketio 的作者和维护者,所以我会给你一个有偏见的回应。
gevent-socketio 项目有一段时间没有维护了。截至今天,repository on GitHub 上的最新提交是从 2016 年 9 月开始的,大约 2.5 年前。此软件包支持的 Socket.IO 协议版本是 0.x 版本,它是旧的并且与 Socket.IO 1.x 和 2.x 版本完全不兼容。
我的 python-socketio 项目是由于 gevent-socketio 的开发速度放缓而诞生的,特别是由于从未收到升级以支持 1.x 版本 Socket.IO协议。与我的竞争对手不同,我决定不添加对 gevent 的硬依赖。相反,我有一个插件系统,它允许我支持许多不同的 Web 服务器框架。截至今天,支持扩展到 eventlet、gevent、uwsgi(与 gevent 结合)、asyncio(与 aiohttp、sanic 或任何 ASGI 兼容服务器结合)和 Tornado。这个包支持 Socket.IO 协议的所有 1.x 和 2.x 版本,我确保它可以连接到官方 JavaScript 客户端,这是大多数人使用的它。如果有用,还包括一个基于 Python 的 Socket.IO 客户端。
希望对您有所帮助!
您也应该检查 gevent-websocket
。我每天都在我的项目中使用它,效果很好。
https://github.com/jgelens/gevent-websocket/tree/master/geventwebsocket