用于浏览器的实时UI同步库

时间:2012-03-28 18:03:33

标签: javascript python websocket

任何人都可以告诉我一个开源js库,它可以在浏览器之间进行实时UI同步,服务器之间有一个控件。

我检查了autobahn.ws实时ui同步,但它不是开源。

它应与所有浏览器兼容。

5 个答案:

答案 0 :(得分:4)

由于您所指的是Autobahn.ws,让我简单地指出几件事:

  • 实时UI同步非常适合WebSocket,因为WebSocket不仅具有非常低的下行延迟,而且还具有非常低的上游延迟。特别是后者非常难/几乎不可能使用Comet,Ajax Push这样的当前解决方法,你选择它..
  • 使用WebSocket,您可以实现200μs(LAN),10ms(相同城市,几个跳跃),30ms(相同国家),150-200ms(跨越海洋),80-100ms(3.5G)之间的往返时间同一国家)或25ms(LTE,同一国家)。
  • 虽然Autobahn.ws(该设备)是商业版,但基础技术(AutobahnPython,AutobahnJS,AutobahnAndroid等)是完全开源的
  • Autobahn.ws(该设备)虽然是商业版,但将拥有一个完全免费的版本,该版本的并发WebSocket连接数量有限
  • 我们网站上的UI滑块演示的JS代码是50行。这真是微不足道。
  • Autobahn支持广泛的桌面和移动浏览器http://autobahn.ws/browsers

免责声明:我是高速公路的作者并为Tavendo工作。

答案 1 :(得分:3)

关于比较的讨论是https://stackoverflow.com/questions/10374113/meteor-vs-derbyjs。有关这三者的讨论正在https://stackoverflow.com/questions/11857367/socketstream-vs-derbyjs-vs-meteor进行。

只有手工制作的Web套接字解决方案才能与Python后端兼容。由于问题更为笼统,我还列出了包括后端的框架。

答案 2 :(得分:1)

使用猿。

http://www.ape-project.org/

它不会为您构建您的UI。那是你的工作。没有办法绕过它。您为Push构建数据,然后根据该数据构建客户端。

答案 3 :(得分:1)

要与UI实时同步,您可以尝试HTML5功能。但是它不适用于所有浏览器,我发布此信息供您参考:

http://dev.w3.org/html5/websockets/

http://dev.w3.org/html5/eventsource/

答案 4 :(得分:0)

您会对此答案感兴趣:https://stackoverflow.com/a/10950702/675065

它基本上是如何在Python中使用Websockets的总结。软件堆栈:

  1. SockJS(用于客户端处理)
  2. 龙卷风(作为sockjs服务器)
  3. Redis(适用于Pub / Sub)