Websocket设计-多个路由(多个连接)还是处理所有事务的单一路由?

Websocket设计-多个路由(多个连接)还是处理所有事务的单一路由?,websocket,Websocket,我一直在使用WebSocket只发送和接收位置更新,但现在我正在考虑将它们用于其他事情,如分析、通知等 按照我的实现的设置方式(我使用的是Go),我有一个/ws/trackingwebsocket路由,在该路由中,当组成员更新其位置时,我可以向组中连接的客户端发送更新,并且客户端也使用该路由将其更新发送到服务器 我应该创建更多的路由,比如/ws/analytics,/ws/notifications,等等,还是应该重新执行我的实现,让像/ws这样的处理程序可以处理所有事情 有了更多的路由,这意味

我一直在使用WebSocket只发送和接收位置更新,但现在我正在考虑将它们用于其他事情,如分析、通知等

按照我的实现的设置方式(我使用的是Go),我有一个
/ws/tracking
websocket路由,在该路由中,当组成员更新其位置时,我可以向组中连接的客户端发送更新,并且客户端也使用该路由将其更新发送到服务器

我应该创建更多的路由,比如
/ws/analytics
/ws/notifications
,等等,还是应该重新执行我的实现,让像
/ws
这样的处理程序可以处理所有事情

有了更多的路由,这意味着我的客户机将不得不打开多个到每个端点的潜在连接。使用单个路由,可能我可以拥有资源的密钥/标识符(即
分析
跟踪
通知
,等等)

不知道这是否是正确的路径,所以请让我知道WebSocket的最佳实践是什么


谢谢

虽然有多条路线看起来更漂亮,但也可能有很多缺点。首先,您使用的资源比单一路线多得多。第二,你比以往任何时候都更多地使用带宽。接下来您可能要考虑的是OS打开文件限制。我建议您选择单一路由,除非您考虑分布式体系结构或类似于每条路由的单个服务器。

没有理由让多个WebSocket只发送不同类型的消息—这只会浪费服务器资源。您可能希望使用socket.io模型,其中每个数据包都有一个消息名(一个字符串),然后只需为每个数据包使用不同的消息名,就可以发送无数不同类型的数据包。或者,您甚至只想使用socket.io(在webSocket传输的顶部)来完成这项工作