Django - 实时通知系统

use*_*032 5 django push-notification websocket pusher django-socketio

我是 Django 的新手并正在构建我自己的应用程序。我想集成从服务器到最终用户的通知系统(个人、组级和广播)。每当他登录他的帐户时,通知栏就会像在 Facebook 中一样显示。

当前使用:Django 1.8 & Python 2.7

我已经通过许多链接或博客来了解。我通过了几个选项如下:

  1. Django gevent Socketio : 不支持 Django 1.8 我已经在 Django 1.8 中完成了所有事情。请让我知道,在支持和功能方面,切换到 Django 1.6 时我可能会遇到多少问题。

  2. Pusher:我不太了解。将 Pusher 用于当前现有应用程序的可行性和有用性。是否有任何兼容性问题?

  3. Swampdragon:似乎与 Django 1.8 存在一些兼容性问题

  4. Django-Tornado,Centrifuge:我有点害怕更改整个代码。此外,不知道未来的问题,我可能会面临。

我的问题:

  1. 请解释最好选择哪个,因为在后期很难转移到另一个。

  2. 此外,切换到 Django 1.6 是支持 Swampdragon 和 Django Socketio 的更好主意。

请提供可能有帮助的链接。

如果我错了,请纠正。我需要你的宝贵建议。

Bab*_*abu 5

我也在研究这个。有一些开源但可定制的解决方案,例如,

其中,我正在考虑在django-websocket-redis使用 nginx+uwsgi 服务器设置时精疲力竭,而且看起来很有希望。顺便说一句,如果你分享你的发现,这对每个人都有用。

对于你的问题,

1) Swampdragon+Pusher是一个很好的组合,因为它减少了很多需要实现的核心内容。

2) 向后移植并不总是一个好的做法。除非它阻止您的应用程序开发,否则永远不要这样做。

更新:现在我们有Django 频道(官方承认)。我正在将它用于我的一个实时项目,到目前为止,它在有几吨用户的实时更新方面表现良好。