在客户端/服务器体系结构的设计过程中,将多个WEBSOCKET连接从同一进程复用到服务器(即共享一个连接)与打开一个连接每个线程/会话在客户端的WEBSOCKET连接(通常在连接到memcached或数据库服务器时完成)。设计/架构:网络插座一个连接vs多个连接
我知道每个连接(例如RAM ...)的相关开销。但预计每个客户端最多不到1K-10K。
具体使用情况: 让我们假设,我有一面多个会话的远程服务器,并在另一边,我有多个客户端,每个客户端将通过WebSocket的服务器连接到不同的会话。 在远程服务器中,有两种实现方法:(1)每个会话创建自己的websocket连接(2)所有会话将使用相同的websocket连接。因为websocket服务器受限于可用的#of连接(节约服务器/扩展),所以我喜欢共享解决方案(一个websocket连接到所有会话)。但是从流量/数据速度/性能的角度来看,如果会话将通过连接发送大量小包,那么,如果我们使用一个共享连接,我们将无法利用带宽(有效负载。 ... /收集几个小包装成一个或将大包装拆分成小包装),因为我们可能需要从不同的会话向不同的客户发送不同的包装,在这种情况下,我们将无法收集少量包装(小包装),因为它们有不同的目的地和来自不同的来源!!,除非我们将创建“虚拟连接”来管理每个会话数据以最大限度地提高速度,但这会造成很多实现的复杂性!
还有其他意见吗?
谢谢, JB。
感谢Myst,确实有很多问题需要考虑,解决方案是基于需求(更重要的是......)。 – Joseph