Comet协议和Django - 我知道一些选项,但我似乎无法使它们工作

时间:2011-06-04 00:03:35

标签: python django comet

我对使用Django制作实时网络应用非常感兴趣。不幸的是,我在设置方面遇到了一些问题。我正在考虑的一些选择:

Orbited:似乎是Django的选择。不幸的是,他们的域名似乎已经过期,并且几乎所有我需要的文档才能使其正常运行。我已经按照http://mischneider.net/?p=125的教程,但我遇到了一个神秘的错误(见No handlers could be found for logger "stomp.py")。

流星:我不得不说,他们的网站给我留下了深刻的印象。不幸的是,我正在运行Windows,似乎缺乏关于Windows的任何文档。所以我迷路了。

Cometd:类似的问题:只是不明白安装。

龙卷风:需要pycurl,这反过来需要卷曲。继续抛出CURL_DIR然后libcurl.lib的问题。经过几个小时的修补,有效地挫败了我的双手。

请帮忙。在这一点上我非常愿意考虑,好吧,任何事情。好吧,至少如果它记录在一起,我可以弄清楚如何安装它并与Django一起使用。

任何帮助表示感谢。

2 个答案:

答案 0 :(得分:5)

要使用彗星技术(或websocket)进行实时网络应用,您需要一台可以处理长期连接和javascript客户端的服务器。大多数彗星图书馆都给你(APE,轨道等)。使用websockets似乎比我更好,它是HTML5的一部分,客户端代码实现起来非常简单,等等。我建议你找一个你喜欢的异步框架/服务器,并用你的方式实现项目的实时/实时部分它

  1. GeventDjango上构建了一个长轮询异步聊天演示。 Gevent非常受欢迎并且有很好的文档记录。

  2. Eventlet是一个很好的并发网络库,它有很好的文档记录。

  3. Twisted当然是Python的事实上的异步网络库。以下是使用websockets加扭曲的示例。

  4. Meinheld是一个不错的轻量级异步网络服务器,它使用greenlet并且有examples of usage with Django, and with websockets

  5. Uwsgi有很好的异步支持,大量的功能,各种方法的几个例子。它也有相当多的文档。

  6. 另请查看瓶子文档以获取商品primer on asynchronous applications

答案 1 :(得分:0)

查看 EvServer EvServer documentation