Dojo 使用Python的实时通知

Dojo 使用Python的实时通知,dojo,websocket,comet,flask,tornado,Dojo,Websocket,Comet,Flask,Tornado,首先,它是异步和非阻塞的,另一方面,它是。如果我使用tornado,我如何与dojo通信 另一个问题是,如果我使用WSGI解决方案,比如,我可以向他们发出“通知”吗?或者dojo必须有一个“开放连接”才能与服务器通信,这不是使用WSGI完成的吗?平均数;Apache或CherryPy不能与Dojo一起工作 如果WSGI不能与Dojo对话,那么在WSGI下使用Atom或Feed来编程通知呢 注:通知将分为两部分:所有用户的产品通知和特定用户的通知;它将使用会话 最后一个问题,关于WebSocket

首先,它是异步和非阻塞的,另一方面,它是。如果我使用tornado,我如何与dojo通信

另一个问题是,如果我使用WSGI解决方案,比如,我可以向他们发出“通知”吗?或者dojo必须有一个“开放连接”才能与服务器通信,这不是使用WSGI完成的吗?平均数;Apache或CherryPy不能与Dojo一起工作

如果WSGI不能与Dojo对话,那么在WSGI下使用Atom或Feed来编程通知呢

注:通知将分为两部分:所有用户的产品通知和特定用户的通知;它将使用会话


最后一个问题,关于WebSocket和HTML5呢?服务器必须与浏览器兼容才能使用此选项?

我不确定为什么Dojo似乎是通信中的问题

Dojo为您提供了AJAX包装器,通过每1-5秒发出一个AJAX请求,您可以在web应用程序中以较小的负载使用AJAX包装器进行几乎实时的通知

如果应用程序将有很多用户,频繁的AJAX请求可能会很快造成太多的开销。幸运的是,您不必使用Dojo与服务器通信。如果您想在服务器端继续使用Python,可以查看和。它使用web浏览器中可用的最佳技术(WebSockets、Flash sockets、comet)提供实时通信

还有
dojox.socket
,但我认为它不够健壮(也不太受欢迎)

但是,您应该记住,通过使用任何类型的持久连接(无论是WebSockets、Socket.IO还是dojox.Socket),您需要一个能够同时维护多个连接的异步服务器


您选择的解决方案应取决于web应用程序本身及其用户群。

+应提供一些提示…服务器发送消息,客户端接收消息,反之亦然。。。是的!但是tornado呢?我能为python找到一个解决方案吗。事实上,您可以使用Tornado或gevent编写异步服务器。我刚发现这里也有一个问题。如果你知道龙卷风,去吧。如果不是,那么指示GEVER可能执行得更好(这是一个相当老的基准,但不考虑WebSoCupe性能)。是的,但龙卷风也是一个框架,所以它有一个模板引擎和Goog-URL调度器,就像Web.PyIF所使用的一个,你计划在其中构建整个Web应用程序,那么你就有了一个要点。如果您只想编写一个Socket.IO服务器,那么这些都无关紧要。您可以运行或拥有两个独立的应用程序,一个用一些传统的WSGI框架(如Flask)编写,另一个用Torando或gevent编写。在第二种情况下,如果您有用户会话(例如,传递使用HMAC签名的用户ID),则必须在这两个应用程序之间提供一些简单的通信方式。