首先是TornadoWeb,它是异步和非阻塞,另一方面是:Dojo。如果我使用龙卷风,我怎么能与道场交流?
另一个问题是,如果我使用像Flask这样的WSGI解决方案,我可以用它们发出“通知”吗?或者dojo必须有一个“开放连接”来与服务器通信,这是不是使用WSGI完成的?意思; Apache或CherryPy不适用于Dojo?
如果WSGI不能与Dojo对话,那么使用Atom或Feeds在WSGI下编程通知呢?
注意:通知将分为两部分:通知所有用户的产品,以及有关特定用户的通知;它会使用会话......
最后一个问题,WebSockets和HTML5怎么样?服务器必须兼容才能在浏览器中使用此选项吗?
答案 0 :(得分:3)
我不确定为什么Dojo似乎是沟通中的问题。
Dojo为您提供了AJAX包装器,您可以通过每1-5秒发出一次AJAX请求,在Web应用程序中使用几乎实时的通知,而且负载很小。
如果应用程序拥有大量用户,频繁的AJAX请求可能会导致过多的开销。幸运的是,您不必使用Dojo与服务器通信。您可以查看Socket.IO,如果您想在服务器端坚持使用Python,gevent-socketio。它使用Web浏览器中提供的最佳技术(WebSockets,Flash套接字,彗星)来提供实时通信。
还有dojox.socket
,但我认为它不那么健壮(而且不那么受欢迎)。
但是,您应该记住,通过使用任何类型的持久连接(无论是WebSockets,Socket.IO还是dojox.socket),您都需要一个能够维持多个同时连接的异步服务器。
您选择的解决方案应该取决于Web应用程序本身及其用户群。