最近,我一直在围绕为Django应用程序提供服务的不同方式进行大量测试。我已经选择了uwsgi,因为它似乎很适合我们的需求。
我最近发现uwsgi也支持WebSockets并开始研究它并找到一些例子:https://github.com/unbit/uwsgi/blob/master/tests/
运行示例(websockets_chat.py)并查看uwsgi的文档以了解其websockets实现后,看起来好像只能发送广播或全局消息。
有没有人设法找到向特定用户传输消息的方法,或者uwsgi是否还不支持该级别的通信?
干杯
答案 0 :(得分:1)
websockets规范中没有广播或全局消息。他们只将http连接“升级”到较低级别的连接。你用这种联系做什么取决于你。这些示例显示了与redis集成为消息交换器,但您可以自由地进行其他用途。
针对您的具体情况,您需要构建已连接用户的共享列表并实现路由。请记住,您不能依赖node.js方式,因为它基于单线程设置,因此一切都更简单。在uWSGI中,websocket连接可以在线程,进程或协程上发生,因此在它们之间交换数据是关键。