aiohttp和websockets有什么区别/兼容性?

2024-09-30 16:19:54 发布

您现在位置:Python中文网/ 问答频道 /正文

aiohttp的websocket支持(即WebSocketResponse)和{a1}(两者都提供异步支持)之间有什么区别?它们能混合吗?在


Tags: aiohttpa1websocket区别websocketresponse
2条回答

它们是由不同的人维护的两个不同的库。它们都是建立在^{}之上的。在

^{}旨在成为一个简单易用的库来实现websockets客户机和服务器,主要由single developer维护。另一方面,^{}是由{a5}维护的一个相当大的库,它不仅提供websockets,而且顾名思义,还提供HTTP功能。它的一些功能与^{}^{}的功能重叠,但以异步方式。在

就大小而言,websockets约为4k LOC,而{}约为40k LOC。如果您只需要一个简单易用的websockets客户机,请使用websockets。如果您已经在使用aiohttp,并且需要websockets功能,请使用aiohttp提供的功能。我觉得把它们混在一起没有意义。在

注意到一个细节可能会迫使那些需要在Debian8中支持系统Python的人做出选择:aiohttp将其minimum supported version设置为python3.5.3(这是debian9中的系统Python版本)。在

尽管aiohttp的人有充分的理由做出这个决定,但是websockets中较小的特性集允许该项目在Debian8中维护对Python3.4.x系统Python的支持,尽管您自己的应用程序代码经过了一些调整,使之与Python3.4兼容:https://websockets.readthedocs.io/en/stable/intro.html#python-lt-36

相关问题 更多 >