Websocket应用设计



我看到的大多数例子都只是小的演示,而不是全栈应用程序,他们使用websocket进行消息传递,但对于任何聊天应用程序,都有更多的数据,而不仅仅是消息…假设像用户配置文件,他的联系人等。

所以我应该使用websockets服务器和客户端之间的所有通信或只是使用它们发送消息,并通过http做其他事情吗?如果我要使用websocket的所有通信如何url设计的应用程序…由于websockets不需要有任何不同的url,如http.

您可能对WAMP感兴趣,WAMP是一个正式注册的WebSocket子协议,为应用程序提供基于WebSocket的

  • 异步双向远程过程调用
  • 实时发布&

免责声明:我是WAMP的原作者,为Tavendo工作。

你肯定会得到通常的"视情况而定"的答案,因为,嗯,视情况而定!

如果你要构建一个大型应用程序,在不同的网络安排下由许多不同的客户端使用,那么我个人不建议使用WebSockets。为什么?

  • 这是一个新标准,所以不是所有的客户端都支持
  • 在某些网络配置中,WebSocket流量可能会被过滤掉,这意味着您最终没有通信-不太好
  • 如果你最终暴露了一个外部API,那么HTTP更适合这项工作,并且可能更容易编写代码。还有更多的工具可以帮助你实现它,以及每个人都熟悉的样式,比如REST,可以遵循。
当你需要从服务器推送数据而不需要客户端轮询时,或者当HTTP头开销成为问题时,使用WebSockets。如果你仍然决定使用它,确保你有一个回退机制(例如长轮询),这样你就不会没有通信。 关于WebSocket API的设计,恐怕我帮不了你。考虑到这是一个新标准,我不相信社区已经决定了什么,所以你必须拿出你自己的基于消息的方案。

相关内容

  • 没有找到相关文章

最新更新