单页Web应用程序是否应将一个Web套接字连接到服务器或几个



我正在使用将要使用Web插座的单页骨干应用程序。该应用程序相当复杂,有6个或更多的主要区域(屏幕)。

Web插座的语法似乎很简单,我现在想知道架构。

使用Web插座时,采用第一种方法或第二种方法是最性能的吗?

1 :在应用程序的任何屏幕或区域上打开一个单个Websocket,然后在客户端上过滤这些消息?

或...

2 :一次打开多个Websocket,每个Web插座代表应用程序中的某些功能

中的某些功能领域

(我已经看过此页面,但这与服务器端有关,我对客户端感兴趣:Websocket服务器的最佳实践是什么?)

更新:服务器正在使用Jetty(Java技术与Tomcat不同)。

我只能打开一个连接,易于管理。为了简化调试,您可以用区域名称命名所有事件。另外,socket.io支持命名空间,请参见"将自己限制到名称空间"部分http://socket.io/#how-to-use。

另外,如果您与Websocket进行了大量通信,则可以使用可见性API将其关闭,例如:https://developer.mozilla.org/en-us/docs/dom/dom/using_page_page_visibility_page_visibility_api

不是对您的问题的直接答案令人信服的论点是这样的),您可能对本文感兴趣,该文章详细讨论了客户端和(Node)服务器之间的模型数据以同步状态。如果您不知道骨干,则可以将其作为节点中的模块安装。

由于您描述的是相当复杂的应用程序,因此您似乎将受益于直接在客户端和服务器之间共享相同复杂模型的能力。

最新更新