作者:王妮美的小姐姐 | 来源:互联网 | 2023-08-10 15:54
对于连续的高容量数据流,另一方为我(只有我)设置了一个websocket端点以供连接。我在Django中拥有当前模型,因此我想从中进行连接。我找到了两个Python websocket客户端库:
- https://github.com/websocket-client/websocket-client
- https://github.com/aaugustin/websockets
第一个(websocket-client
)指出所有功能都是同步的。由于端点将具有连续的流量(相当大的流量),并且我需要将结果写入(postgres)数据库中,所以我会说我需要一种异步的方式来做到这一点。第二个名为websockets
的库具有异步接收内容的方式,但是我不确定是否可以使用异步函数写入数据库。我认为这可能是一个问题,是因为在Django Channels项目this page中有一条注释,内容如下:
任何异步使用者都必须小心,避免直接执行阻塞操作,例如访问Django模型。
所以我的问题是:
- 我可以使用这些异步模型写入数据库吗?
- 如果是这样,我应该注意些什么?
- 关于如何通过websocket处理大量数据流,还有其他技巧吗?