我现在正在制作一个django网站,我想实现像facebook或SE上的实时通知功能.
我做了一些研究,看起来虽然有两种选择:ajax长轮询和websockets,后者是要走的路.
但是,正如你所知,对于websocket插件来说,'socket.io'原来是一个node.js插件而django端口似乎只支持python 2而且项目似乎已经死了.我使用python 2.7作为我的项目解释器,但我希望自己将来证明自己,如果我以后升级到python3,我发现自己无法使用此功能.
所以我的问题是:是否有一个直接的和未来的现成方法来实现websocket,用于在django env中发送实时通知和聊天?
sta*_*alk 12
Django本身是以阻塞方式构建的,即采用同步方法.所以,你不能用django app打开持久websocket,因为它会阻止整个django线程.
如果你想在django项目环境中启用通知/聊天,我建议使用离心机.它是用python编写的,但是使用了异步(非阻塞)框架:tornado.
但是,您甚至不需要知道它是如何工作的,因为它提供了简单的REST API来与它进行通信.
简化工作流程,查看文档以获取更多详细信息:
centrifuge
您的django项目开始在同一台服务器上启动(或在另一台服务器上启动,但它们之间的延迟较低)我已经尝试过了,它有效!
归档时间: |
|
查看次数: |
2755 次 |
最近记录: |