我正在选择一个 python 库来编写一个嵌入我网站的实时聊天功能页面。
我发现了两个基于 Socket.IO 的库, python-socketio
和 gevent-socketio
:
来自 python-socketio doc :
来自 gevent-socketio doc :
你看,两者都是 Socket.IO 的实现。
我想选择其中之一(或者如果有比他们更好的图书馆,我不知道)。
我的考虑点如下:
我上网查了一下,
gevent-socketio
直播必须使用gevent python WSGI
服务器,不知道是不是我项目部署的限制。谁能给我建议选择最适合我的图书馆?
最佳答案
抱歉这么晚才回答这个问题。我是python-socketio的作者和维护者,所以我会给你一个有偏见的回应。
gevent-socketio 项目已经有一段时间没有维护了。截至今天,repository on GitHub 上的最新提交是从 2016 年 9 月开始的,大约是 2.5 年前。此包支持的 Socket.IO 协议(protocol)版本为 0.x 版本,该版本较旧且与 Socket.IO 1.x 和 2.x 版本完全不兼容。
我的 python-socketio 项目诞生于 gevent-socketio 开发放缓的结果,特别是由于从未收到升级以支持 Socket.IO 协议(protocol)的 1.x 版本。与我的竞争对手不同,我决定不对 gevent 添加强依赖。相反,我有一个插件系统,它允许我支持许多不同的 Web 服务器框架。截至今天,支持扩展到 eventlet、gevent、uwsgi(与 gevent 结合)、asyncio(与 aiohttp、sanic 或任何 ASGI 投诉服务器结合)和 Tornado。这个包支持 Socket.IO 协议(protocol)的所有 1.x 和 2.x 版本,我确保它可以连接到官方 JavaScript 客户端,这是大多数人使用的。如果它有用,还包括一个基于 Python 的 Socket.IO 客户端。
希望这可以帮助!
关于python-socketio vs Gevent-socketio,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48682051/